home *** CD-ROM | disk | FTP | other *** search
Text File | 1992-05-07 | 717.1 KB | 14,146 lines |
- ========= THIS IS THE JARGON FILE, VERSION 2.5.1 29 JAN 1991 =================
-
- Introduction
- ************
-
- This document is a collection of slang terms used by various
- subcultures of computer hackers. Though some technical material is
- included for background and flavor, it is not a technical dictionary;
- what we describe here is the language hackers use among themselves for
- fun, social communication and debate within their communities.
-
- The `hacker culture' is actually a loosely networked collection of
- subcultures that is nevertheless conscious of some important shared
- experiences, shared roots, and shared values. It has its own myths,
- heroes, villains, folk epics, in-jokes, taboos and dreams. Because
- hackers as a group are particularly creative people who define
- themselves partly by rejection of `normal' values and working habits,
- it has unusually rich and conscious traditions for an intentional
- culture less than thirty-five years old.
-
- Hackers, as a rule, love word-play and are very conscious in their use
- of language. Thus, a compilation of their slang is a particularly
- effective window into their culture --- and, in fact, this one is the
- latest version of an evolving compilation called the `Jargon File'
- maintained by hackers themselves for over fifteen years. This one
- (like its ancestors) is primarily a lexicon, but also includes `topic
- entries' which collect background or sidelight information on hacker
- culture that would be awkward to try to subsume under a single term.
- These are distinguished by being in SMALL CAPS.
-
- Though the format is that of a reference, it is also intended that the
- material be enjoyable to browse or read straight through. Even a
- complete outsider should find at least a chuckle on nearly every page,
- and much that is amusingly thought-provoking. But it is also true
- that hackers use humorous word-play to make strong, sometime combative
- statements about what they feel. Some of these entries reflect the
- views of opposing sides in disputes which have been genuinely
- passionate, and they deliberately reflect this. We have not tried to
- moderate or pretty up these disputes; rather we have attempted to
- ensure that *everyone's* sacred cows get gored, impartially.
- Compromise is not particularly a hackish virtue, but the honest
- presentation of divergent viewpoints is.
-
- They reader with minimal computer background who finds some references
- incomprehensibly technical can safely ignore them. We have not felt
- it either necessary or desirable to eliminate all such; they, too,
- contribute flavor and one of this document's major intended audiences
- (fledgeling hackers already partway inside the culture) will benefit
- from them.
-
- A selection of longer items of hacker folklore and humor are included
- in appendix A. The `outside' reader's attention is particularly
- directed to Appendix B, the Portrait of J. Random Hacker. Appendix C
- is a bibliography of non-technical works which have either influenced
- or described the hacker culture.
-
- Because hackerdom is an intentional culture (one which each individual
- must choose consciously to join), one should not be surprised that the
- line between description and influence can become more than a little
- blurred. Earlier Jargon File versions have played a central role in
- spreading hacker language and the culture that goes with it to
- successively larger populations, and we hope and expect that this one
- will do likewise.
-
- Revision History
- ================
-
- The original Jargon File was a collection of hacker slang from
- technical cultures including the MIT AI Lab, the Stanford AI lab
- (SAIL), the old ARPANET AI/LISP/PDP-10 communities, Carnegie-Mellon
- University (CMU), and Worcester Polytechnic Institute (WPI).
-
- The Jargon File (hereafter referred to as `jargon-1' or `the File')
- was begun by Raphael Finkel at Stanford in 1975, though some terms in
- it date back considerably earlier (<frob> and some senses of
- <moby>, for instance, go back to the MIT Model Railroad Club and are
- are believed to date at least back to the early nineteen-sixties).
- The revisions of jargon-1 were all un-numbered and may be collectively
- considered `Version 1'.
-
- In 1976, Mark Crispin brought the File to MIT; he and Guy Steele then
- added a first wave of new entries. Richard Frankel dropped out of
- active participation shortly thereafter, and Don Woods became the SAIL
- contact for the file (which was subsequently kept in duplicate at SAIL
- and MIT, with periodic re-synchronizations).
-
- The file expanded by fits and starts until about 1983; Richard
- Stallman was prominent among the contributors, adding many MIT and
- ITS-related coinages.
-
- A late version of jargon-1, expanded with commentary for the mass
- market, was edited by Guy L. Steele into a book published in 1983 as
- `The Hacker's Dictionary' (Harper & Row CN 1082, ISBN
- 0-06-091082-8). The other jargon-1 editors (Raphael Finkel, Don Woods
- and Mark Crispin) contributed to the revision, as did also Richard M.
- Stallman and Geoff Goodfellow. This book is hereafter referred to as
- `Steele-1983'. It is now out of print.
-
- Shortly after the publication of Steele-1983 the File effectively
- stopped growing and changing. The PDP-10-centered cultures that had
- originally nourished it were dealt a serious blow by the cancellation
- of the Jupiter project at DEC. The AI-Lab culture died and its best
- and brightest dispersed; the File's compilers moved on to other
- things.
-
- By the mid-1980s the File's contents was dated, but the legend that
- had grown up around it never quite died out. The book and softcopies
- snarfed off the ARPANET circulated even in cultures far removed from
- MIT's; the content exerted a strong and continuing influence on
- hackish slang and humor. Even as the advent of the microcomputer and
- other trends fueled a tremendous expansion of hackerdom, the File (and
- related materials like the AI Koans in Appendix A) came to be seen as
- a sort of sacred epic, a hacker-culture Matter of Britain chronicling
- the heroic exploits of the Knights of the Lab. The pace of change in
- hackerdom at large accelerated tremendously, but the Jargon File
- passed from living document to icon and remained essentially untouched
- for seven years.
-
- This revision contains nearly the entire text of a late version of
- jargon-1 (a few obsolete PDP-10-related entries have been dropped
- following careful consultation with the editors of Steele-1983). It
- merges in about about 80% of the Steele-1983 text, omitting some
- framing material and a very few entries introduced in Steele-1983
- which are now also obsolescent.
-
- This new version casts a wider net than the old jargon file; its aim
- is to cover not just AI but all the technical computing cultures
- wherein the true hacker-nature is manifested. More than half of the
- entries now derive from USENET and represent slang now current in the
- C and UNIX communities, but special efforts have been made to collect
- slang from other cultures including IBM-PC programmers, Mac fans and
- even the IBM mainframe world.
-
- Where a term can be attributred to a particular subculture or is known
- to have originated there, we have tried to so indicate. Here is a
- list of abbreviations used in etymologies:
-
- Berkeley
- University of California at Berkeley.
- Cambridge
- Cambridge University, England (*not* Cambridge, Mass!).
- CMU
- Carnegie-Mellon University
- Commodore
- Commodore Business Nachines.
- Fidonet
- See the <Fidonet> entry.
- IBM
- International Business Machines
- MIT
- Massachusetts Institute of Technology; esp. the legendary MIT AI Lab
- culture of roughly 1971 to 1983. Some MITisms go back to the MIT
- Model Railroad Club of c.1960.
- NYU
- New York University.
- Purdue
- Purdue University.
- SAIL
- Stanford Artificial Intelliegence Laboratory.
- Stanford
- Stanford University.
- Sun
- Sun Microsystems.
- UCLA
- University of California at Los Angeles.
- USENET
- See the <USENET> entry.
- WPI
- Worcester Polytechnic Institute, site of a very active community of
- PDP-10 hackers during the Seventies.
- Xerox PARC
- Xerox's Palo Alto Research Center, site of much pioneering research in
- user interface design and networking.
- Yale
- Yale University.
-
- Some other etymology abbreviations such as <UNIX>, <PDP-10>, etc.
- refer to technical cultures surrounding specific operating systems,
- processors or other environments.
-
- Eric S. Raymond (eric@snark.thyrsus.com) maintains the new File with
- assistance from Guy L. Steele (gls@think.com); these are the persons
- primarily reflected in the File's editorial `we', though we take
- pleasure in acknowledging the special contribution of the other
- coauthors of Steele-1983. Please email all additions, corrections and
- correspondence relating to the jargon file to jargon@thyrsus.com
- (UUCP-only sites without connections to an autorouting smart site can
- use ...!uunet!snark!jargon).
-
- (Warning: other email addresses appear in this file *but are not
- guaranteed to be correct* later than the revision date on the first
- line. *Don't* email us if an attempt to reach your idol bounces
- --- we have no magic way of checking addresses or looking up people)
-
- Some snapshot of this on-line version will become the main text of a
- `New Hacker's Dictionary' possibly as early as Fall 1991. The
- maintainers are committed to updating the on-line version of the
- jargon file through and beyond paper publication, and will continue to
- make it available to archives and public-access sites as a trust of
- the hacker community.
-
- Here is a chronology of the recent on-line revisions:
-
- Version 2.1.1, Jun 12 1990: the jargon file comes alive again after a
- seven-year hiatus. Reorganization and massive additions were by Eric
- S. Raymond, approved by Guy Steele. Many items of UNIX, C, USENET and
- microcomputer-based slang were added at that time (as well as The
- Untimely Demise of Mabel The Monkey). Some obsolete usages (mostly
- PDP-10 derived) were moved to appendix B.
-
- Version 2.1.5, Nov 28 1990: changes and additions by ESR in response to
- numerous USENET submissions and comment from the First Edition coauthors.
- The bibliography (Appendix C) was also appended.
-
- Version 2.2.1, Dec 15 1990: most of the contents of the 1983 paper
- edition edited by Guy Steele was merged in. Many more USENET
- submissions added, including the International Style and
- <COMMONWEALTH HACKISH> material. This version had 9394 lines, 75954
- words, 490501 chars, and 1046 entries.
-
- Version 2.3.1, Jan 03 1991: the great format change --- case is no
- longer smashed in lexicon keys and cross-references. A very few
- entries from jargon-1 which were basically straight tech-speak were
- deleted; this enabled the rest of Appendix B to be merged back into
- main text and the appendix replaced with the Portrait of J. Random
- Hacker. More USENET submissions were added. This version had 10728
- lines, 85070 words, 558261 characters, and 1138 entries.
-
- Version 2.4.1, Jan 14 1991: the Story of Mel and many more USENET
- submissions merged in. More material on hackish writing habits added.
- Numerous typo fixes. This version had 12362 lines, 97819 words,
- 642899 characters, and 1239 entries.
-
- Version 2.5.1, Jan 29 1991: many new entries merged in. Discussion of
- inclusion styles added. This version had 14145 lines, 111904 words,
- 734285 characters, and 1425 entries.
-
- Version numbering: Read versions as major.minor.revision. Major
- version 1 is reserved for the `old' (ITS) Jargon File, jargon-1. Major
- version 2 encompasses revisions by ESR with assistance from GLS. Someday,
- the next maintainer will take over and spawn `version 3'. In general, later
- versions will either completely obsolesce or incorporate earlier versions,
- so there is generally no point in keeping old versions around.
-
- Our thanks to the other co-authors of Steele-1983 for oversight and
- assistance; also to all the USENETters who contributed entries and
- encouragement. Special thanks go to our Scandinavian correspondent
- Per Lindberg (per@front.se), author of the remarkable Swedish
- language 'zine `Hackerbladet', for bringing FOO! comics to our
- attention and smuggling one of the IBM hacker underground's own baby
- jargon files out to us. Also, much gratitude to ace hacker/linguist Joe
- Keane (jkg@osc.osc.com) for helping us improve the pronunciation
- guides; and to Maarten Litmath for generously allowing the inclusion
- of the ASCII pronunciation guide he formerly maintained. Finally,
- Mark Brader (msb@sq.sq.com) submitted many thoughtful comments and
- did yeoman service in catching typos and minor usage bobbles.
-
- Format For New Entries
- ======================
-
- Try to conform to the format already being used --- definitions and
- cross-references in angle brackets, pronunciations in slashes,
- etymologies in square brackets, single-space after definition numbers
- and word classes, etc. Stick to the standard ASCII character set (no
- high-half characters or [nt]roff/TeX/Scribe escapes), as one of the
- versions generated from the master file is an info document that has
- to be viewable on a character tty.
-
- Please note that as of 2.3.1 the preferred format has changed rather
- dramatically; please *don't* all-caps your entry keys any more.
- Besides preserving case information, this enables the maintainers to
- process the File into a rather spiffy [nt]roff document with font
- switches via an almost trivial lex(1) program. This is all in aid of
- preventing the freely-available on-line document and the book from
- diverging.
-
- We are looking to expand the file's range of technical specialties covered.
- There are doubtless rich veins of jargon yet untapped in the scientific
- computing, graphics, and networking hacker communities; also in numerical
- analysis, computer architectures and VLSI design, language design, and many
- other related fields. Send us your slang!
-
- We are *not* interested in straight technical terms explained by
- textbooks or technical dictionaries unless an entry illuminates
- `underground' meanings or aspects not covered by official histories.
- We are also not interested in `joke' entries --- there is a lot of
- humor in the file but it must flow naturally out of the explanations
- of what hackers do and how they think.
-
- It is OK to submit items of slang you have originated if they have spread
- to the point of being used by people who are not personally acquainted with
- you. We prefer items to be attested by independent submission from two
- different sites.
-
- A few new definitions attached to entries are marked [proposed].
- These are usually generalizations suggested by editors or USENET
- respondents in the process of commenting on previous definitions of
- those entries. These are *not* represented as established
- jargon.
-
- The jargon file will be regularly maintained and re-posted from now on and
- will include a version number. Read it, pass it around, contribute --- this
- is *your* monument!
-
- Jargon Construction
- ===================
-
- There are some standard methods of jargonification which became
- established quite early (i.e. before 1970), spreading from such
- sources as the MIT Model Railroad Club, the PDP-1 SPACEWAR hackers,
- and John McCarthy's original crew of LISPers. These include:
-
- Verb doubling: A standard construction in English is to double a verb
- and use it as an exclamation, such as "Bang, bang!" or "Quack,
- quack!". Most of these are names for noises. Hackers also double
- verbs as a concise, sometimes sarcastic comment on what the implied
- subject does. Also, a doubled verb is often used to terminate a
- conversation, in the process remarking on the current state of affairs
- or what the speaker intends to do next. Typical examples involve
- <win>, <lose>, <hack>, <flame>, <barf>, <chomp>:
-
- "The disk heads just crashed." "Lose, lose."
- "Mostly he talked about his latest crock. Flame, flame."
- "Boy, what a bagbiter! Chomp, chomp!"
-
- Some verb-doubled constructions have special meanings not immediately
- obvious from the verb. These have their own listings in the lexicon.
-
- Soundalike slang: Hackers will often make rhymes or puns in order to
- convert an ordinary word or phrase into something more interesting.
- It is considered particularly <flavorful> if the phrase is bent so
- as to include some other slang word; thus the computer hobbyist
- magazine `Dr. Dobb's Journal' is almost always referred to among
- hackers as `Dr. Frob's Journal' or simply `Dr. Frob's'. Terms of
- this kind that have been in fairly wide use include names for
- newspapers:
-
- Boston Herald American => Horrid (or Harried) American
- Boston Globe => Boston Glob
- San Francisco Chronicle => the Crocknicle
- New York Times => New York Slime
-
- However, terms like these are often made up on the spur of the moment.
- Standard examples include:
-
- Prime Time => Slime Time
- Data General => Dirty Genitals
- Government Property - Do Not Duplicate (seen on keys)
- => Government Duplicity - Do Not Propagate
- for historical reasons => for hysterical raisins
- Margaret Jacks Hall => Marginal Hacks Hall
-
- This is not really similar to the Cockney rhyming slang it has been
- compared to in the past, because Cockney substitutions are opaque
- whereas hacker rhyming slang is intentionally transparent.
-
- The -P convention: turning a word into a question by appending the
- syllable `P'; from the LISP convention of appending the letter `P'
- to denote a predicate (a Boolean-valued function). The question
- should expect a yes/no answer, though it needn't. (See T and NIL.)
-
- At dinnertime:
- Q: "Foodp?"
- A: "Yeah, I'm pretty hungry." or "T!"
-
- Q: "State-of-the-world-P?"
- A: (Straight) "I'm about to go home."
- A: (Humorous) "Yes, the world has a state."
-
- On the phone to Florida:
- Q: "State-p Florida?"
- A: "Been reading JARGON.TXT again, eh?"
-
- [One of the best of these is a Gosperism (i.e., due to Bill
- Gosper). When we were at a Chinese restaurant, he wanted to know
- whether someone would like to share with him a two-person-sized
- bowl of soup. His inquiry was: "Split-p soup?" --GLS]
-
- Overgeneralization: A very conspicuous feature of hackerspeak is the
- frequency with which names of program tools, command language
- primitives, and even assembler opcodes are applied to contexts outside
- of computing wherever hackers find amusing analogies to them. Thus,
- (to cite one of the best-known examples) UNIX hackers often <grep> for
- things rather than *searching* for them. Many of the lexicon
- entries are generalizations of exactly this kind.
-
- Hackers enjoy overgeneralization on the grammatical level as well.
- Many hackers love to take various words and add the wrong endings to
- them to make nouns and verbs, often by extending a standard rule to
- nonuniform cases (or vice versa). For example, because
-
- porous => porosity
- generous => generosity
-
- hackers happily generalize:
-
- mysterious => mysteriosity
- ferrous => ferrocity
- obvious => obviosity
- dubious => dubiosity
-
- Also, note that all nouns can be verbed. e.g.: "All nouns can be
- verbed", "I'll mouse it up", "Hang on while I clipboard it over",
- "I'm grepping the files". English as a whole is already heading in
- this direction (towards pure-positional grammar like Chinese);
- hackers are simply a bit ahead of the curve.
-
- Similarly, all verbs can be nouned. Thus:
-
- win => winnitude, winnage
- disgust => disgustitude
- hack => hackification
-
- Finally, note the prevalence of certain kinds of nonstandard plural
- forms. Anything ending in x may form plurals in -xen (see <VAXen>
- and <boxen> in the main text). Even words ending in phonetic /k/
- alone are sometimes treated this way; ex. `soxen' for a bunch of
- socks. Other funny plurals are `frobbotzim' for the plural of
- <frobboz> (see main text) and `Unices' and `Tenices' (rather than
- `Unixes' and `Tenexes'; see <UNIX>, <TENEX> in main text). But
- note that `Unixen' and `Tenexen' are *never* used; it has been
- suggested that this is because -ix and -ex are latin singular endings
- that attract a Latinate plural.
-
- The pattern here, as with other hackish grammatical quirks, is
- generalization of an inflectional rule which (in English) is either
- an import or a fossil (such as Hebrew plural in `-im', or the
- Anglo-Saxon plural in `en') to cases where it isn't normally
- considered to apply.
-
- This is not `poor grammar', as hackers are generally quite well
- aware of what they are doing when they distort the language. It is
- grammatical creativity, a form of playfulness.
-
- Spoken inarticulations: Words such as `mumble', `sigh', and
- `groan' are spoken in places where their referent might more
- naturally be used. It has been suggested that this usage derives from
- the impossibility of representing such noises on a comm link or in
- email. Another expression sometimes heard is "Complain!", meaning
- "I have a complaint!"
-
- Of the five listed constructions, verb doubling, peculiar noun
- formations, and (especially!) spoken inarticulations have become quite
- general; but rhyming slang is still largely confined to MIT and other
- large universities, and the P convention is found only where LISPers
- flourish.
-
- Finally, note that many words in hacker jargon have to be
- understood as members of sets of comparatives. This is especially
- true of the adjectives and nouns used to describe the beauty and
- functional quality of code. Here is an approximately correct
- spectrum:
-
- MONSTROSITY BRAIN-DAMAGE SCREW BUG LOSE MISFEATURE
- CROCK KLUGE HACK WIN FEATURE ELEGANCE PERFECTION
-
- The last is spoken of as a mythical absolute, approximated but never
- actually attained. Coinages for describing <lossage> seem to call
- forth the very finest in hackish linguistic inventiveness; it has been
- truly said that "<Computer geeks> have more words for equipment
- failures than Inuit have for snow", or than Yiddish has for obnoxious
- people.
-
- Hacker Speech Style
- ===================
-
- Features extremely precise diction, careful word choice, a
- relatively large working vocabulary, and relatively little use of
- contractions or `street slang'. Dry humor, irony, puns, and a
- mildly flippant attitude are highly valued --- but an underlying
- seriousness and intelligence is essential. One should use just
- enough jargon to communicate precisely and identify oneself as `in
- the culture'; overuse of jargon or a breathless, excessively
- gung-ho attitude are considered tacky and the mark of a loser.
-
- This speech style is a variety of the precisionist English normally
- spoken by scientists, design engineers, and academics in technical
- fields. Unlike the jargon construction methods, it is fairly constant
- throughout hackerdom.
-
- It has been observed that many hackers are confused by negative
- questions --- or, at least, the people they're talking to are often
- confused by the sense of their answers. The problem is that they've
- done so much coding that distinguishes between
-
- if (going) {
-
- and
-
- if (!going) {
-
- that when they parse the question "Aren't you going?" it seems to be
- asking the opposite question from "Are you going?", and so merits an
- answer in the opposite sense. This confuses English-speaking
- non-hackers because they were taught to answer as though the negative
- part weren't there (in some other languages, including Chinese and
- Japanese, the hackish interpretation is standard and the problem
- wouldn't arise). Hackers often find themselves wishing for a word
- like French `si' or German `doch' with which one could
- unambiguously answer `yes' to a negative question.
-
- For similar reasons, English-speaking hackers almost never use a
- double negative even if they live in a region where colloquial usage
- allows it. The thought of uttering something that logically ought to
- be an affirmative knowing it will be mis-parsed as a negative tends to
- disturb them.
-
- Hacker Writing Style
- ====================
-
- Hackers tend to use quotes as balanced delimiters like parens, much to
- the dismay of American editors. Thus, if "Jim is going" is a
- phrase, and so is "Bill runs" and "Spock groks", then hackers
- generally prefer to write: "Jim is going", "Bill runs", and
- "Spock groks". This is incorrect according to standard American
- usage (which would put the continuation commas and the final period
- inside the string quotes) but it is counter-intuitive to hackers to
- mutilate literal strings with characters that don't belong in them.
- Given the sorts of examples that can come up in discussing
- programming, American-style quoting can even be grossly misleading.
- When communicating command lines or small pieces of code extra
- characters can be a real pain in the neck. For example:
-
- First do "foo -acrZ tempo | bar -," then...
-
- is different from
-
- First do "foo -acrZ tempo | bar -", then...
-
- from a computer's point of view. While the first is correct according
- to the stylebooks and would probably be parsed correctly by the a
- human recipient, the second is unambiguous. The Jargon File follows
- hackish usage consistently throughout.
-
- Interestingly, a similar style is now preferred practice in Great
- Britain, though the older style (which became established for
- typographical reasons having to do with the aesthetics of comma and
- quotes in typeset text) is still accepted there. Hart's Rules and the
- Oxford Dictionary for Writers and Editors call it `new' or `logical'
- style quoting.
-
- Another hacker quirk about quoting style is a tendency to distinguish
- between `marking' quotes and "speech" quotes; that is, to use
- British-style single quotes for emphasis and reserve double quotes for
- actual reports of speach or text included from elsewhere.
- Interestingly, some authorities describe this as correct general
- usage, but mainstream American English has gone to using double-quotes
- thoroughly enough that hacker usage appears marked [and, in fact, I
- thought this was a personal quirk of mine until I checked with USENET
- -- ESR]. One further permutation that is definitely *not*
- standard is a hackish tendency to do marking quotes by using
- apostrophes in pairs; that is, 'like this'. This is modelled on
- string and character literal syntax in some programming languages.
-
- There seems to be a meta-rule behind these nonstandard hackerisms to
- the effect that precision of expression is more important than
- conformance to traditional rules; where the latter create ambiguity or
- lose information they can be discarded without a second thought. It
- is notable in this respect that other hackish inventions (for example,
- in vocabulary) also tend to carry very precise shades of meaning even
- when constructed to appear slangy and loose.
-
- There is another respect in which hackish usage often parallels
- British usage; it tends to choose British spellings whenever these
- seem more phonetically consistent than the American ones. For
- example, a hacker is likely to insist on (British-style) `signalling'
- rather than American-standard `signaling' on the grounds that the
- latter ought to be pronounced /sig'nay'ling/ rather than
- /sig'n@-ling/. Similarly, `travelling' is preferred to `traveling'.
-
- Hackers have also developed a number of punctuation and emphasis
- conventions adapted to single-font all-ASCII communications links, and
- these are occasionally carried over into written documents even when
- normal means of font changes, underlining, and the like are available.
-
- One of these is that TEXT IN ALL CAPS IS INTERPRETED AS `LOUD', and
- this becomes such a synesthetic reflex that a person who goes to
- caps-lock while in <talk mode> (see main text) may be asked to "stop
- shouting, please, you're hurting my ears!".
-
- Also, it is common to use bracketing with asterisks to signify
- emphasis, as in "What the *hell*?" (mote that this interferes with
- the common use of asterisk suffix is a footnote mark). An alternative
- form uses paired slash and backslash: "What the \hell/?". The
- latter is never used in text documents, as many formatters treat
- backslash as an <escape> and may do inappropriate things with the
- following text. Also note that there is a semantic difference between
- *emphasis like this*, (which emphasizes the phrase as a whole) and
- *emphasis* *like* *this* (which suggests the writer speaking very
- slowly and distinctly, as if to a very young child or mentallly
- impaired person).
-
- In a formula, `*' signifies multiplication, and two asterisks in a
- row are a shorthand for exponentiation (this derives from FORTRAN).
- Thus, one might write `2 ** 8 = 256'.
-
- Another notation for exponentiation one sees more frequently uses the
- caret (^, ASCII 1011110); one might write instead `2 ^ 8 = 256'.
- This goes all the way back to Algol-60, which used the archaic ASCII
- `up-arrow' that later became caret; this was picked up by Kemeny &
- Kurtz's original BASIC, which in turn influenced the design of the
- bc(1) and dc(1) UNIX tools that have probably done most to reinforce
- the convention on USENET. The notation is mildly confusing to C
- programmers, because `^' means logical <XOR> in C. Despite
- this, it was favored 3--1 over ** in a late-1990 snapshot of USENET.
- It is used consistently in this text.
-
- Another on-line convention, used especially for very large or very
- small numbers, is taken from C (which derived it from FORTRAN). This
- is a form of `scientific notation' using `e' to replace `*10^'; for
- example, one year is about 3e7 seconds long.
-
- The tilde (`~') is commonly used in its mathematical sense of
- `approximately'; that is, `~50' means "about fifty".
-
- Underlining is often suggested by substituting underscores for spaces
- and prepending and appending one underscore to the underlined phrase.
- Example: "It is often alleged that Haldeman wrote _The_Forever_War_
- in response to Robert Heinlein's earlier _Starship_Troopers_"
-
- On USENET and in the <MUD> world common C boolean operators
- (`|, !, ==, !=, >, <') are often combined with English by analogy
- with mainstream usage of &. The Pascal not-equals, `<>', is also
- recognized. The use of prefix `!' as a loose synonym for `not-' or
- `no-' is particularly common; thus, `!clue' is read `no-clue' or
- `clueless'.
-
- Another habit is that of using enclosure to genericize a term; this
- derives from conventions used in <BNF>. Uses like the following are
- common:
-
- So this <ethnic> walks into a bar one day, and...
-
- In flat-ASCII renderings of the Jargon File, you will see <> used in
- exactly this way to bracket words which themselves have entries in the
- File. This isn't done all the time for every such word, but it is
- done everywhere that the reader needs specially to be aware that the
- term has a jargon meaning and might wish to refer to its entry.
-
- One quirk that shows up frequently in the <email> style of UNIX
- hackers in particular is a tendency for some things which are normally
- all-lowercase (including usernames and the names of commands and C
- routines) to remain uncapitalized even when they occur at the
- beginning of sentences. It is clear that, for many hackers, the case
- of such identifiers becomes a part of their internal representation
- (the "spelling") and cannot be overridden without mental effort (an
- appropriate reflex because UNIX and C both distinguish cases and
- confusing them can lead to lossage). Another way of dealing with this
- is simply to avoid using these constructions at the beginning of
- sentences.
-
- Finally, it should be noted that hackers exhibit much less reluctance
- to use multiply-nested parentheses than is normal in English. Partly
- this is almost certainly due to influence from LISP ((which uses
- deeply nested parentheses (like this) in its syntax) (a lot (see?))),
- but it has also been suggested that a more basic hacker trait of
- enjoying playing with complexity and pushing systems to their limits
- is in operation.
-
- One area where hackish conventions for on-line writing are still in
- some flux is the marking of included material from earlier messages
- --- what would be called `block quotations' in ordinary English. From
- the usual typographic convention employed for these (smaller font at
- an extra indent) there derived the notation of included text being
- indented by one ASCII TAB (0001001) character, which under UNIX and
- many other environments gives the appearance of an 8-space indent.
-
- Early mail and netnews readers had no facility for including messages
- this way, so people had to paste in copy manually. BSD `Mail(1)'
- was the first message agent to support inclusion, and early USENETters
- emulated its style. But the TAB character tended to push included
- text too far to the right (especially in multiply nested inclusions),
- leading to ugly wraparounds. After a brief period of confusion
- (during which an inclusion leader consisting of three or four spaces
- became established in EMACS and a few mailers), the use of leading ">"
- or "> " became standard, perhaps because the character suggests
- movement to the right (alternatively, it may derve from the ">" that
- some V7 UNIX mailers use to quote leading instances of "From" in
- text). Inclusions within inclusions keep their > leaders, so the
- `nesting level' of a quotation is visuallly apparent.
-
- Now, it was rapidly observed that the practice of including text
- helped solve what had been a major nuisance on USENET: the fact that
- articles do not arrive at different sites in the same order. Careless
- posters used to post articles that would begin with, or even consist
- entirely of, "No, that's wrong", or "I agree" or the like. It was
- hard to see who was responding to what. Consequently, in about 1984,
- new news posting software was created with a facility to automatically
- include the text of a previous article, marked with "> " or whatever
- the poster chose. The poster was expected to delete all but the
- relevant lines. The result has been that, now, careless posters post
- articles containing the *entire* text of a preceding article,
- *followed* only by "No, that's wrong" or "I agree".
-
- Many people feel that this cure is worse than the original disease,
- and there soon appeared newsreader software designed to let the reader
- skip over included text if desired. Today, some posting software
- rejects articles containing too high a proportion of lines beginning
- with ">", but this too has led to undesirable workarounds such as the
- deliberate inclusion of zero-content filler lines which aren't quoted
- and thus pull the message below the rejection threshold.
-
- Because the default mailers supplied with UNIX and other operating
- systems haven't evolved as quickly as human usage, the older
- conventions using a leading TAB or three or four spaces are still
- alive; however, >-inclusion is now clearly the preferred form in both
- netnews and mail.
-
- Practice is still evolving. One variant style reported uses the
- citation character `|' in place of `>' for extended quotations where
- original variations in indentation are being retained. One also sees
- different styles of quoting a number of authors in the same message:
- one (deprecated because it loses information) uses a leader of "> "
- for everyone, another (the most common) is "> > > > ", "> > > ", etc.
- (or ">>>> ", ">>> ", etc., depending on line length and nesting depth)
- reflecting the original order of messages, and yet another is to use a
- different citation leader for each author, say "> ", ": ", "| ", "} "
- (preserving nesting so that the inclusion order of messages is still
- apparent, or tagging the inclusions with authors' names). Yet *another*
- style is to use each poster's initials (or login name) as a citation
- leader for that poster. Occasionally one sees a "# " leader used for
- quotations from *authoritative* sources such as standards
- documents; the intended connotation is to the root prompt.
-
- International Style
- ===================
-
- Although the Jargon File remains primarily a lexicon of hacker
- usage in American English, we have made some effort to get input from
- abroad. Though the hacker-speak of other languages often uses
- translations of English slang (often as transmitted to them by earlier
- Jargon File versions!) the local variations are interesting, and
- knowledge of them may be of some use to travelling hackers.
-
- There are some references to `Commonwealth English'. These are
- intended to describe some variations in hacker usage as reported in
- the English spoken in Great Britain and the Commonwealth (Canada,
- Australia, India, etc., though Canada is heavily influenced by American
- usage). There is also an entry on COMMONWEALTH HACKISH, which see.
-
- Hackers in Western Europe and (especially) Scandinavia are reported
- to often use a mixture of English and their native languages for
- technical conversation. Occasionally they develop idioms in their
- English usage which are influenced by their native-language styles.
- Some of these are reported here.
-
- A note or two on hackish usages in Russian have been added where they
- are parallel with and comprehensible to English-speakers.
-
- UNIX Conventions
- ================
-
- References such as `malloc(3)' and `patch(1)' are to UNIX
- facilities (some of which, such as patch(1), are actually freeware
- distributed over USENET). The UNIX manuals use `foo(n)' to refer
- to item foo in section (n) of the manual, where n=1 is utilities, n=2
- is system calls, n=3 is C library routines, n=6 is games, and n=8
- (where present) is system administration utilities. Sections 4, 5,
- and 7 have changed roles frequently and in any case are not referred
- to from any of the entries.
-
- Pronunciation Guide
- ===================
-
- Pronunciation keys are provided in the jargon listing for all
- entries that are neither dictionary words pronounced as in standard
- English nor obvious compounds of same. Slashes bracket a phonetic
- pronunciation to be interpreted using the following conventions:
-
- 1. Syllables are hyphen-separated, except that an apostrophe
- or back-apostrophe follows each accented syllable (the
- back apostrophe marks a secondary accent in some words of
- four or more syllables).
-
- 2. Consonants are pronounced as in American English. The letter
- "g" is always hard (as in "got" rather than "giant");
- "ch" is soft ("church" rather than "chemist"). The letter
- "j" is the sound that occurs twice in "judge". The letter
- "s" is always as in "pass", never a z sound (but it is
- sometimes doubled at the end of syllables to emphasize this).
- The digraph `kh' is the guttural of `loch' or `l'chaim'.
-
- 3. Vowels are represented as follows:
-
- a back, that
- ah father, palm
- ar far, mark
- aw flaw, caught
- ay bake, rain
- e less, men
- ee easy, ski
- eir their, software
- i trip, hit
- ie life, sky
- o cot, top
- oh flow, sew
- oo loot, through
- or more, door
- ow out, how
- oy boy, coin
- uh but, some
- u put, foot
- y yet
- yoo few
- [y]oo oo with optional fronting as in `news' (noos or nyoos)
-
- An at-sign is used for the `schwa' sound of unstressed or occluded
- vowels (the one that is often written with an upside-down `e'). The
- schwa vowel is omitted in syllables containing vocalic r, l, m or n;
- that is, `kitten' and `color' would be rendered /kit'n/ and /kuhl'r/,
- not /kit'@n/ and /kuhl'@r/.
-
- Entries are sorted in case-blind ASCII collation order (rather than
- the letter-by-letter order ignoring interword spacing common in
- mainstream dictionaries). The case-blindness is a feature, not
- a bug.
-
- The Jargon Lexicon
- ******************
-
- {= [^A-Za-z] (see <regexp>) =}
-
- <@-party> /at'par`tee/ [from the @-sign in an Internet address] n.
- (also `@-sign party' /at'sien par`tee/) Semi-closed parties thrown
- at SF conventions (esp. the annual Worldcon) for hackers; one must
- have a <network address> to get in, or at least be in company
- with someone who does. One of the most reliable opportunities for
- hackers to meet face to face with people who might otherwise be
- represented by mere phosphor dots on their screens. Compare
- <boink>.
-
- <@Begin> [primarily CMU] n. Scribe-influenced equivalent of
- <\begin>.
-
- <'Snooze> [Fidonet] n. Fidonews, the weekly official on-line newsletter
- of Fidonet. As the editorial policy of Fidonews is "anything
- that arrives, we print", there are often large articles completely
- unrelated to Fidonet, which in turn tend to elicit <flamage> in
- subsequent issues.
-
- <(tm)> [USENET] ASCII rendition of the trademark symbol, appended to
- phrases that the author feels should be recorded for posterity,
- perhaps in the Jargon File. Sometimes used ironically as a form of
- protest against the recent spate of software and algorithm patents,
- and `look and feel' lawsuits.
-
- </dev/null> /dev-nuhl/ [from the UNIX null device, used as a data
- sink] n. A notional `black hole' in any information space being
- discussed, used or referred to. A controversial posting, for
- example, might end "Kudos to rasputin@kremlin.org, flames to
- /dev/null". See <bit bucket>, <null device>.
-
- <120 reset> n. To cycle power on a machine in order to reset or
- unjam it. Compare <Big Red Switch>, <power cycle>.
-
- <2 (infix)> n. In translation software written by hackers, infix 2 often
- represents the syllable to with the connotation "translate
- to"; as in dvi2ps (DVI to PostScript), int2string (integer to
- string) and texi2roff (Texinfo to [nt]roff).
-
- <\begin> with \end, used humorously in writing to
- indicate a context or to remark on the surrounded text. From the
- LaTeX command of the same name. For example:
-
- \begin{Flame}
- Predicate logic is the only good programming language.
- Anyone who would use anything else is an idiot. Also,
- computers should be tredecimal instead of binary.
- \end{Flame}
-
- The Scribe users at CMU and elsewhere used to use @Begin/@End in
- an identical way. On USENET, this construct would more frequently
- be rendered as "<FLAME ON>" and "<FLAME OFF>".
-
- {= A =}
-
- <accumulator> n. Archaic term for a register. Cited here because
- on-line use of it is a fairly reliable indication that the user has
- been around for quite a while, and/or the architecture under
- discussion is quite old. The term in full is never used of
- microprocessor registers, for example, though symbolic names for
- arithmetic registers beginning in A derive from historical use of
- `accumulator' (and not, actually, from `arithmetic'!).
- Confusingly, though, an `A' register name prefix may also stand for
- `address', as for example on the Motorola 680x0 family.
-
- <ACK> /ak/ interj. 1. [from the ASCII mnemonic for 0000110]
- Acknowledge. Used to register one's presence (compare mainstream
- Yo!). An appropriate response to <ping> or <ENQ>. 2. [prob.
- from the Bloom County comic strip] An exclamation of surprised
- disgust, esp. in "Oop ack!". Semi-humorous. 3. Used to politely
- interrupt someone to tell them you understand their point. See
- <NAK>. Thus, for example, you might cut off an overly long
- explanation with "Ack. Ack. Ack. I get it now". See also <NAK>.
-
- There is also a usage "ACK?" (from sense #1) meaning "Are you
- there?", often used in email when earlier mail has produced no
- reply, or during a lull in <talk mode> to see if the person has
- gone away (the standard humorous response is of course <NAK>
- (sense #2), i.e., "I'm not here").
-
- <adger> /adj'r/ [UCLA] vt. To make a bonehead move with consequences
- that could have been foreseen with a slight amount of mental
- effort. E.g., "He started removing files and promptly adgered the
- whole project." Compare <dumbass attack>.
-
- <ad-hockery> /ad-hok'@r-ee/ [Purdue] n. 1. Gratuitous assumptions
- made inside certain programs, esp. expert systems, which lead to
- the appearance of semi-intelligent behavior, but are in fact
- entirely arbitrary. 2. Special-case code to cope with some awkward
- input which would otherwise cause a program to <choke>, presuming
- normal inputs are dealt with in some cleaner and more regular way.
- Also called "ad-hackery".
-
- <Ada> n. A <Pascal>-descended language that has been made
- mandatory for Department of Defense software projects by the
- Pentagon. Hackers are nearly unanimous in observing that,
- technically, it is precisely what one might expect given that kind
- of endorsement by fiat; designed by committee, crockish, difficult
- to use, and overall a disasterous, multi-billion-dollar boondoggle
- (one common description is "The PL/1 of the 1980s"; hackers find
- the exception handling and inter-process communication features
- particularly risible). Ada Lovelace (the niece of the poet Lord
- Byron who became the world's first programmer while cooperating
- with Babbage on the design of his mechanical computing engines in
- the mid-1800s) would certainly blanch at the use her name has been
- latterly put to; the kindest thing that has been said about it it
- is that there is probably a good small language screaming to get
- out from inside its vast, <elephantine> bulk.
-
- <ADVENT> /ad'vent/ n. The prototypical computer adventure game, first
- implemented on the <PDP-10> by Will Crowther as an attempt at
- computer-refereed fantasy gaming, and expanded into a
- puzzle-oriented game by Don Woods. Now bet<ter known as Adventure,
- but the <TOPS-10> operating system only permitted 6-letter
- filenames.
-
- This game defined the terse, dryly humorous style now expected in
- text adventure games and popularized several tag lines that have
- become fixtures of hacker-speak. "A huge green fierce snake bars
- the way!" "I see no X here." (for X some noun). "You are in a
- maze of twisty little passages, all alike." "You are in a little
- maze of twisty passages, all different." The "magic words"
- <xyzzy> and <plugh> also derive from this game.
-
- Crowther, by the way, participated in the exploration of the
- Mammoth/Flint Ridge cave system; it actually *has* a `Colossal
- Cave' and a `Bedquilt' as in the game, and the `Y2' that also turns
- up is cavers' jargon for a map reference to a secondary entrance.
-
- <AI koans> pl.n. A series of pastiches of Zen teaching riddles
- created by Danny Hillis at the MIT AI Lab around various major
- figures of the Lab's culture. A selection are included in Appendix
- A. See also <ha ha only serious> and HUMOR, HACKER.
-
- <AIDS> /ayds/ n. Short for A* Infected Disk Syndrome ("A*" matches,
- but not limited to, Apple), this condition is the quite often the
- result of practicing unsafe <SEX>. See <virus>, <worm>, <trojan
- horse>
-
- <airplane rule> n. "Complexity increases the possibility of
- failure; a twin-engine aeroplane has twice as many engine problems
- as a single engine aeroplane." By analogy, in both software and
- electronics, the rule that simplicity increases robustness (see
- also <Keep It Simple, Stupid>. It is correspondingly argued that
- the right way to build reliable systems is to put all your design
- eggs in one basket and then build a *really good* basket.
-
- <aliasing bug> [C programmers] n. A class of subtle programming
- errors which can arise in code that does dynamic allocation, esp.
- via `malloc(3)'. If more than one pointer addresses (`aliases
- for') a given hunk of storage, it may happen that the storage is
- freed through one alias and then referenced through another,
- leading to subtle (and possibly intermittent) lossage depending on
- the state and the allocation history of the malloc <arena>.
- Avoidable by use of allocation strategies that never alias
- allocated core. Also avoidable by use of higher-level languages
- such as <LISP> which employ a garbage collector (see <GC>).
- Also called a <stale pointer bug>. See also <precedence
- lossage>, <smash the stack>, <fandango on core>, <memory
- leak>, <overrun screw>, <spam>.
-
- <all-elbows> adj. Of a TSR (terminate-and-stay-resident) IBM PC
- program, such as the N pop-up calendar and calculator utilities
- that circulate on <BBS> systems: unsociable. Used to describe a
- program that rudely steals the resources that it needs without
- considering that other TSRs may also be resident. One particularly
- common form of rudeness is lock-up due to programs fighting over
- the keyboard interrupt. See also <mess-doss>.
-
- <ALT> /awlt/ [PDP-10] n.obs. Alternate name for the ASCII ESC
- character, after the keycap labeling on some older terminals. Also
- "ALTMODE". This character was almost never pronounced
- "escape" on an ITS system, in TECO, or under TOPS-10 --- always
- ALT, as in "Type ALT ALT to end a TECO command" or "ALT U onto
- the system" (for "log onto the [ITS] system"). This was
- probably because ALT is more convenient to say than "escape",
- especially when followed by another ALT or a character (or another
- ALT *and* a character, for that matter!).
-
- <alt bit> /alt bit/ [from alternate] adj. See <meta bit>.
-
- <Aluminum Book> [MIT] n. `Common Lisp: The Language', by Guy L.
- Steele Jr., Digital Press, first edition, 1984, second edition
- 1990. Strictly speaking, only the first edition is the aluminum
- book, since the second edition has a yucky pale green cover. See
- also <Blue Book>, <Red Book>, <Green Book>, <Silver Book>, <Purple
- Book>, <Orange Book>, <White Book>, <Pink-Shirt Book>, <Dragon
- Book>.
-
- <amoeba> /@-mee'b@/ n. Humorous term for the Commodore Amiga
- personal computer.
-
- <amp off> [Purdue] vt. To run in <background>. From the UNIX shell `&'
- operator.
-
- <angle brackets> n. Either of the characters `<' and `>' (ASCII
- less-than or greater-than signs). The <Real World> angle brackets
- used by typographers are actually taller than a less-than or
- greater-than sign.
- See <broket>, <ASCII>.
-
- <AOS> 1. /aws/ (East coast), /ay-os/ (West coast) [based on a PDP-10
- increment instruction] vt.,obs. To increase the amount of something.
- "Aos the campfire." Usage: considered silly, and now
- obsolescent. See <SOS>. Now largely supplanted by <bump>. 2.
- A crufty <Multics>-derived OS supported at one time by Data
- General. This was pronounced /ay-oh-ess/ or /ay-ahs/, the latter
- being prevalent internally at DG. A spoof of the standard AOS
- system administrator's manual (`How to load and generate your
- AOS system') was created, issued a part number, and allegedly
- released. It was called `How to goad and levitate your chaos
- system'.
-
- Historical note: AOS in sense #1 was the name of a <PDP-10>
- instruction that took any memory location in the computer and added
- one to it; AOS meant "Add One and do not Skip". Why, you may
- ask, does the "S" stand for "do not Skip" rather than for
- "Skip"? Ah, here was a beloved piece of PDP-10 folklore. There
- were eight such instructions: AOSE added one and then skipped the
- next instruction if the result was Equal to zero; AOSG added one
- and then skipped if the result was Greater than zero; AOSN added
- one and then skipped if the result was Not zero; AOSA added one and
- then skipped Always; and so on. Just plain AOS didn't say when to
- skip, so it never skipped. For similar reasons, AOJ meant "Add
- One and do not Jump". Even more bizarre, SKIP meant "do not
- SKIP"! If you wanted to skip the next instruction, you had to say
- "SKIPA". Likewise, JUMP means "do not JUMP". Such were the
- perverse mysteries of assembler programming.
-
- <app> /ap/ n. Short for "application program", as opposed to a systems
- program. What systems vendors are forever chasing developers to do
- for their environments so they can sell more boxes. Hackers tend
- not to think of the things they themselves run as apps; thus, in
- hacker parlance the term excludes compilers, program editors,
- games, and messaging systems, though a user would consider all
- those apps. Oppose <tool>, <operating system>.
-
- <arc> [primarily MSDOS] vt. to create a compressed archive from a
- group of files using the SEA ARC, PKWare PKARC, or compatible
- program. Rapidly becoming obsolete as the ARC compression method
- is falling into disuse, having been replaced by newer compression
- techniques. See <tar and feather>, <zip>.
-
- <arc wars> [primarily MSDOS] n. <holy wars> over which archiving
- program one should use. The first arc war was sparked when System
- Enhancement Associates (SEA) sued PKWare for copyright and
- trademark infringement on its ARC program. PKWare's PKARC
- outperformed ARC on both compression and speed while largely
- retaining compatibility (it introduced a new compression type which
- could be disabled for backward-compatibility). PKWare settled out
- of court to avoid enormous legal costs (both SEA and PKWare are
- small companies); as part of the settlement, it was prohibited from
- distributing ARC-compatible archivers in the future. The public
- backlash against SEA for bringing suit helped to hasten the demise
- of ARC as a standard when PKWare and others introduced new,
- incompatible but better-compressing, archivers.
-
- <arena> [UNIX] n. The area of memory attached to a process by `brk(2)'
- and `sbrk(2)' and used by `malloc(3)' as dynamic storage. So named
- from a semi-mythical `malloc: corrupt arena' message supposedly
- emitted when some early versions became terminally confused. See
- <overrun screw>, <aliasing bug>, <memory leak>, <smash the stack>.
-
- <arg> /arg/ n. Abbreviation for "argument" (to a function), used so
- often as to have become a new word (like `piano' from
- `pianoforte'). "The sine function takes one arg, but the
- arc-tangent function can take either one or two args". Compare
- <param>, <var>.
-
- <armor-plated> n. Syn. for <bulletproof>.
-
- <asbestos cork award> n. Once, long ago at MIT, there was a <flamer>
- so consistently obnoxious that another hacker designed, had made,
- and distributed posters announcing that said flamer had been
- nominated for the "asbestos cork award". Persons in any doubt as
- to the intended application of the cork should consult the
- etymology under <flame>. Since then, it is agreed that only a
- select few have risen to the heights of bombast required to earn
- this dubious dignity --- but there's no agreement on *which*
- few.
-
- <asbestos longjohns> n. Metaphoric garments often donned by <USENET>
- posters just before emitting a remark they expect will elicit
- <flamage>. Also "asbestos underwear", "asbestos overcoat",
- etc.
-
- <ASCII> [American Standard Code for Information Interchange] /as'kee/
- n. Common slang names for ASCII characters are collected here. See
- individual entries for <bang>, <close>, <excl>, <open>, <ques>,
- <semi>, <shriek>, <splat>, <twiddle>, <what>, <wow>, and <Yu-Shiang
- whole fish>. This list derives from revision 2.2 of the USENET
- ASCII pronunciation guide. Single characters are listed in ASCII
- order; character pairs are sorted in by first member. For each
- character, common names are given in rough order of popularity
- followed by names which are reported but rarely seen; official
- ANSI/CCIT names are parenthesized.
-
- `!'
- Common: <bang>, pling, excl shriek, (exclamation point).
- Rare: factorial, exclam, smash, cuss, boing, yell, wow, hey,
- wham, spot-spark, soldier..
-
- `"'
- Common: double quote, quote. Rare: literal mark,
- double-glitch, (quotation marks), (diaresis), dirk..
-
- `#'
- Common: (number sign), pound, hash, sharp, <crunch>, mesh,
- hex. Rare: flash, crosshatch, grid, pig-pen, tictactoe,
- scratchmark, octothorpe, thud, <splat>..
-
- `$'
- Common: dollar, (dollar sign). Rare: currency symbol, buck,
- cash, string (from BASIC), escape (from <TOPS-10>), ding,
- cache..
-
- `%'
- Common: percent, (percent sign), mod, grapes..
-
- `&'
- Common: (ampersand), amper, and. Rare: address (from C),
- reference (from C++), andpersand, bitand, background (from
- `sh(1)'), pretzel..
-
- `''
- Common: single quote, quote, (apostrophe). Rare: prime,
- glitch, tick, irk, pop, spark, (closing single quotation
- mark), (acute accent)..
-
- `()'
- Common: left/right paren, left/right parenthesis, left/right,
- paren/thesis, open/close paren, open/close, open/close
- parenthesis, left/right banana. Rare: lparen/rparen,
- so/already, wax/wane, (opening/closing parenthesis),
- left/right ear, parenthisey/unparenthisey, open/close round
- bracket..
-
- `*'
- Common: star, <splat>, (asterisk). Rare: wildcard, gear,
- dingle, mult, spider, aster, times, twinkle, glob (see
- <glob>), <Nathan Hale>..
-
- `+'
- Common: (plus), add. Rare: cross..
-
- `,'
- Common: (comma). Rate: (cedilla)..
-
- `-'
- Common: dash, (hyphen), (minus). Rare: worm, option, dak,
- bithorpe..
-
- `.'
- Common: dot, point, (period), (decimal point), Rare: radix
- point, full stop..
-
- `/'
- Common: slash, stroke, (slant), forward slash. Rare: diagonal,
- solidus, over, slak, virgule..
-
- `:'
- Common: (colon). Rare: two-spot..
-
- `;'
- Common: (semicolon), semi. Rare: weenie..
-
- `<>'
- Common: (less/greater than), left/right angle bracket,
- bra/ket, left/right broket. Rare: from/{into,towards}, read
- from/write to, suck/blow, comes-from/gozinta, in/out,
- crunch/zap (all from UNIX).
-
- `='
- Common: (equals), gets. Rare: quadrathorpe..
-
- `?'
- Common: query, (question mark), <ques>. Rare: whatmark, what,
- wildchar, huh, hook, buttonhook, hunchback..
-
- `@'
- Common: at-sign, at, strudel. Rare: each, vortex, whorl,
- cyclone, snail, ape, cat, rose, cabbage, (commercial at)..
-
- `V'
- Rare: vee, book..
-
- `[]'
- Common: left/right square bracket, (opening/closing bracket),
- bracket/unbracket left/right bracket, Rare: square/unsquare..
-
- `\'
- Common: backslash, escape (from C/UNIX), reverse slash, slosh,
- backslant. Rare: bash, backwhack, (reversed slant), reversed
- virgule..
-
- `^'
- Common: hat, control, (as in `control to'), uparrow, (caret).
- Rare: (circumflex), chevron, shark (or shark fin), to (`to the
- power of'), fang..
-
- `_'
- Common: (underline), underscore, underbar, under. Rare:
- score, backarrow..
-
- ``'
- Common: backquote, left quote, open quote, (grave accent),
- grave. Rare: backprime, backspark, unapostrophe, birk,
- blugle, back tick, back glitch, push, (opening single
- quotation mark)..
-
- `{}'
- Common: open/close brace, left/right brace, left/right
- squiggly bracket, (opening/closing brace), left/right curly
- bracket. Rare: brace/unbrace, curly/uncurly, leftit/rytit..
-
- `|'
- Common: bar, or, or-bar, v-bar, pipe. Rare: vertical bar,
- (vertical line), gozinta, thru, pipesinta (last three ones
- from UNIX)..
-
- `~'
- Common: (tilde), squiggle, <twiddle>, not. Rare: approx,
- wiggle, swung dash, enyay, sqiggle.
-
- The pronunciation of `#' as `pound' is common in the U.S. but
- a bad idea; Commonwealth hackish has its own rather more apposite
- use of `pound'. The U.S. practice seems to derive from an old-time
- habit of using `#' to tag pound weights on bills of lading.
- The character is usually pronounced `hash' outside the U.S.
-
- Also note that the `swung dash' or `approx' sign is not quite the
- same as tilde in typeset material, but the ASCII tilde serves for
- both (compare <angle brackets>).
-
- Some other common usages cause odd overlaps. The `#',
- `$', `>' and `&' chars, for example, are all
- pronounced "hex" in different communities because various assemblers
- use them as a prefix tag for hexadecimal constants (in particular,
- $ in the 6502 world, > at Texas Instruments, and & on the Sinclair
- and some other Z80 machines).
-
- <asymptotic> adj. Infinitely close to. This is used in a
- generalization of its mathematical meaning to allege that something
- is <within epsilon of> some standard, reference, or goal (see
- <epsilon>).
-
- <autobogotiphobia> /aw'to-boh-got'@-foh`bee-uh/ n. See <bogotify>.
-
- <automagically> /aw-toh-maj'i-klee/ or /aw-toh-maj'i-k@l-ee/ adv.
- Automatically, but in a way which, for some reason (typically
- because it is too complicated, or too ugly, or perhaps even too
- trivial), the speaker doesn't feel like explaining to you. See
- <magic>. "The C-INTERCAL compiler generates C, then automagically
- invokes `cc(1)' to produce an executable."
-
- <awk> 1. n. [UNIX] An interpreted language developed by Aho,
- Weinberg and Kernighan (the name is from their initials).
- characterized by: C-like syntax, a BASIC-like approach to variable
- typing and declarations, associative arrays, and field-oriented
- text processing. See also <Perl>. 2. Editing term for an
- expression awkward to manipulate through normal regular expression
- facilities. 2. vt. To process data using `awk(1)'.
-
- {= B =}
-
- <backbone cabal> n. A group of large-site administrators who pushed
- through the <Great Renaming> and reined in the chaos of <USENET>
- during most of the 1980s. The cabal <mailing list> disbanded in late
- 1988 after a bitter internal catfight, but the net hardly noticed.
-
- <backbone site> n. A key USENET and email site; one which processes
- a large amount of third-party traffic, especially if it's the home
- site of any of the regional coordinators for the USENET maps.
- Notable backbone sites as of early 1991 include "uunet" and the
- mail machines at Rutgers University, UC Berkeley, DEC's Western
- Research Laboratories, Ohio State University, and the University of
- Texas. Compare <rib site>, <leaf site>.
-
- <back door> n. A hole in the security of a system deliberately left in
- place by designers or maintainers. The motivation for this is not
- always sinister; some operating systems, for example, come out of
- the box with privileged accounts intended for use by field service
- or the vendor's maintenance programmers.
-
- Historically, back doors have often lurked in systems longer than
- anyone expected or planned, and a few have become widely known.
- The famous RTM worm of late 1988, for example, used a back door in
- the <BSD UNIX> `sendmail(1)' utility.
-
- Ken Thompson's 1983 Turing Award lecture to the ACM revealed the
- existence of a back door in early UNIX versions that may have
- qualified as the most fiendishly clever security hack of all time.
- The binaries of the C compiler had code in them which a) would
- automatically patch itself into the output executable whenver
- whenever the compiler itself was being recompiled, b) would also
- patch the `login' command, when *it* was being
- recompiled, to accept a password that gave Thompson entry to the
- computer whether or not an account had been created for him! This
- back door was propagated through hundreds of machines without any
- clue to it ever showing up in source.
-
- Syn. <trap door>; may also be called a "wormhole". See also
- <iron box>, <cracker>, <worm>, <logic bomb>.
-
- <background> vt.,adj. A task running in background is detached from
- the terminal where it was started (and often running at a lower
- priority); oppose <foreground>. Nowadays this term is primarily
- associated with <UNIX>, but it appears first to have been used in
- this sense on OS/360. By extension, to do a task "in
- background" is to do it whenever <foreground> matters are not
- claiming your undivided attention, and "to background"
- something means to relegate it to a lower priority. Note that this
- implies ongoing activity but at a reduced level or in spare time,
- in contrast to mainstream `back burner' which connotes benign
- neglect until some future resumption of activity. Compare <amp
- off>, <slopsucker>.
-
- <backspace and overstrike> interj. Whoa! Back up. Used to suggest
- that someone just said or did something wrong. Common among
- APL programmers.
-
- <BAD> [IBM; acronym, Broken As Designed] adj. Said of a program
- which is <bogus> due to bad design and misfeatures rather than
- due to bugginess. See <working as designed>.
-
- <Bad Thing> [from the 1962 Sellars & Yeatman parody `1066 and All
- That'] n. Something which can't possibly result in improvement of
- the subject. This term is always capitalized, as in "Replacing
- all of the 9600 baud modems with bicycle couriers would be a Bad
- Thing." Oppose <Good Thing>. British correspondents confirm that
- <Bad Thing> and <Good Thing> (and prob. therefore <Right Thing> and
- <Wrong Thing>) come from the book referenced in the etymology,
- which discusses rulers who were Good Kings, but Bad Things. This
- has apparently created a mainstream idiom on their side of the
- pond.
-
- <bagbiter> /bag'biet-@r/ n. 1. Something, such as a program or a
- computer, that fails to work, or works in a remarkably clumsy
- manner. Example: "This text editor won't let me make a file with
- a line longer than 80 characters! What a bagbiter!" 2. A person
- who has caused you some trouble, inadvertently or otherwise,
- typically by failing to program the computer properly. Synonyms:
- <loser>, <cretin>, <chomper>. 3. Also in the form
- "bagbiting" adj. Having the quality of a bagbiter. "This
- bagbiting system won't let me compute the factorial of a negative
- number." Compare <losing>, <cretinous>, <bletcherous>,
- <barfucious> and "chomping" (under <chomp>). 4. "bite
- the bag" vi. To fail in some manner. "The computer keeps crashing
- every five minutes." "Yes, the disk controller is really biting
- the bag." The original loading of these terms was almost
- undoubtedly obscene, possibly referring to the scrotum, but in
- their current usage they have become almost completely sanitized.
-
- <bamf> /bamf/ 1. [from old X-men comics] interj. Notional sound made
- by a person or object teleporting in or out of the hearer's
- vicinity. Often used in <virtual reality> (esp. <MUD>)
- electronic fora when a character wishes to make a dramatic entrance
- or exit. 2. [from `Don Washington's Survival Guide'] n.
- Acronym for `Bad-Ass Mother Fucker', used to refer to one of the
- handful of nastiest monsters on an LPMUD or similar MUD.
-
- <banana label> n. The labels often used on the sides of <macrotape>
- reels, so called because they're shaped roughly like blunt-ended
- bananas. This term, like macrotapes themselves, is still current
- but visibly headed for obsolescence.
-
- <banana problem> n. [from the story of the little girl who said "I
- know how to spell `banana', but I don't know when to stop"]. Not
- knowing where or when to bring a production to a close. One may
- say there is a banana problem of an algorithm with poorly defined
- or incorrect termination conditions, or in discussing the evolution
- of a design that may be succumbing to featuritis (see also
- <creeping elegance>).
-
- <bandwidth> n. 1. Used by hackers in a generalization of its technical
- meaning as the volume of information per unit time that a computer,
- person or transmission medium can handle. "Those are amazing
- graphics but I missed some of the detail --- not enough bandwidth,
- I guess." 2. Attention span. 3. On <USENET>, a measure of
- network capacity that is often wasted by people complaining about
- how network news items posted by others are a waste of bandwidth.
-
- <bang> 1. n. Common spoken name for `!' (ASCII 0100001),
- especially when used in pronouncing a <bang path> in spoken
- hackish. In elder days this was considered a CMUish usage, with
- MIT and Stanford hackers preferring <excl> or <shriek>; but the
- spread of UNIX has carried <bang> with it (esp. via the term
- <bang path>) and it is now certainly the most common spoken name
- for `!'. Note that it is used exclusively for non-emphatic
- written `!'; one would not say "Congratulations bang"
- (except possibly for humorous purposes), but if one wanted to
- specify the exact characters `FOO!', one would speak "Eff oh oh
- bang". See <shriek>, <ASCII>. 2. interj. An exclamation
- signifying roughly "I have achieved enlightenment!", or "The
- dynamite has cleared out my brain!". Often used to acknowledge
- that one has perpetrated a <thinko> immediately after one has
- been called on it.
-
- <bang path> n. An old-style UUCP electronic-mail address specifying
- hops to get from some assumed-reachable location to the addressee,
- so called because each <hop> is signified by a <bang> sign. Thus
- the path `...!bigsite!foovax!barbox!me' directs correspondents
- to route their mail to machine bigsite (presumably a well-known
- location accessible to everybody) and from there through the
- machine `foovax' to the account of user `me' on `barbox'. In the
- bad old days of not so long ago, before autorouting mailers became
- commonplace, people often published compound bang addresses using
- the { } convention (see <glob>) to give paths from
- *several* big machines, in the hopes that one's correspondent
- might be able to get mail to one of them reliable (example:
- ...!{seismo, ut-sally, gatech}!rice!beta!gamma!me). Bang paths of 8
- to ten hops were not uncommon in 1981. Late night dial-up uucp
- links would cause week-long transmission times. Bang paths were
- often selected by both transmission time and reliability, as
- messages would often get lost. See <Internet address>,
- <network, the>, and <sitename>.
-
- <banner> n. 1. The title page added to printouts by most print
- spoolers see <spool>. Typically includes user or account ID
- information in very large character-graphics capitals. 2. A
- similar printout generated from user-specified text, e.g by a
- program such as UNIX's `banner[16]'. 3. On interactive
- software, a first screen containing a logo and/or author credits
- and/or copyright notice.
-
- <bar> /bar/ n. 1. The second metasyntactic variable, after <foo>
- and before <baz>. "Suppose we have two functions FOO and BAR.
- FOO calls BAR..." 2. Often appended to <foo> to produce
- <foobar>.
-
- <bare metal> n. 1. New computer hardware, unadorned with such snares
- and delusions as an <operating system>, <HLL>, or even
- assembler. Commonly in the phrase `programming on the bare metal',
- which refers to the arduous work of <bit bashing> needed to
- create these basic tools for a new machine. Real bare-metal
- programming involves things like building boot proms and BIOS
- chips, implementing basic monitors used to test device drivers, and
- writing the assemblers that will be used to write the compiler back
- ends that will give the new machine a real development environment.
- 2. The same phrase is also used to describe a style of
- <hand-hacking> that relies on bit-level peculiarities of a
- particular hardware design, esp. tricks for speed and space
- optimization that rely on crocks such as overlapping opcodes (or,
- as in the famous case described in Appendix A, interleaving of
- opcodes on a magnetic drum to minimize fetch delays due to the
- device's rotational latency). This sort of thing has become less
- common as the relative costs of programming time and machine
- resources have changed, but is still found in heavily constrained
- environments like industrial embedded systems. See <real
- programmer>.
-
- <barf> /barf/ [from mainstream slang meaning `vomit'] 1. interj.
- Term of disgust. This is the closest hackish equivalent of the
- Valspeak `gag me with a spoon'. See <bletch>. 2. To say
- "Barf!" or emit some similar expression of disgust. "I showed
- him my latest hack and he barfed" means only that he complained
- about it, not that he literally vomited. 3. vi. To fail to work
- because of unacceptable input. May mean to give an error message.
- Examples: "The division operation barfs if you try to divide by
- zero." (that is, division by zero fails in some unspecified
- spectacular way) "The text editor barfs if you try to read in a
- new file before writing out the old one." See <choke>, <gag>.
- Note that in Commonwealth hackish, `barf' is generally replaced by
- `puke' or `vom'. <barf> is sometimes also used as a
- metasyntactic variable like <foo> or <bar>.
-
- <barfulous> adj. (also <barfucious>) Said of something which would
- make anyone barf, if only for esthetic reasons.
-
- <barfulation> interj. Variation of <barf> used around the Stanford
- area. An exclamation, expressing disgust. On seeing some
- particularly bad code one might exclaim, "Barfulation! Who wrote
- this, Quux?"
-
- <baroque> adj. Feature-encrusted; complex; gaudy; verging on
- excessive. Said of hardware or (esp.) software designs, this has
- many of the connotations of <elephantine> or <monstrosity> but is
- less extreme and not pejorative in itself. See also <rococo>.
-
- <BartleMUD> n. Any of the MUDs which are devived from the original MUD
- game (see <MUD>) or use the same software drivers. BartleMUDs are
- noted for their (usually slightly offbeat) humour, dry but friendly
- syntax, and lack of adjectives in object descriptions, so a player
- is likely to come across `brand172', for instance (see <brand
- brand brand>). Some mudders intensely dislike Bartle and this
- term, preferring to speak of `MUD-1'.
-
- <batch> adj. Non-interactive. Hackers use this somewhat more
- loosely than the traditional technical definitions justify; in
- particular, switches on a normally interactive program that prepare
- it to receive what would normally be keyboard input from a file are
- often referred to as <batch mode> switches. A "batch file"
- is a series of instructions written to be handed to an interactive
- program running in batch mode. Compare <script>.
-
- <baud barf> /bawd barf/ n. The garbage one gets on the monitor when
- using a modem connection with some protocol setting (esp. line
- speed) incorrect, or when someone picks up a voice extension on the
- same line, or when really bad line noise disrupts the connection.
- Baud barf is not completely <random>, by the way; hackers with a
- lot of serial-line experience can usually tell whether the device
- at the other end is expecting a higher or lower speed than the
- terminal is set to. *Really* experienced ones can identify
- particular speeds.
-
- <bathtub curve> n. Common term for the curve (resembling an
- end-to-end section of one of those claw-footed antique bathtubs)
- that describes the expected failure rate of electronics with time:
- initially high, dropping to near zero for most of the system's
- lifetime, then rising again as it `tires out'. See also <burn-in
- period>, <infant mortality>.
-
- <baz> /baz/ n. [Stanford corruption of <bar>] 1. The third
- metasyntactic variable, after <foo> and <bar> and before
- <qux>. "Suppose we have three functions FOO, BAR, and BAZ. FOO
- calls BAR, which calls BAZ..." 2. interj. Term of mild
- annoyance. In this usage the term is often drawn out for two or
- three seconds, producing an effect not unlike the bleating of a
- sheep; /baaaaaaz/. 3. Occasionally appended to <foo> to produce
- `foobaz'.
-
- <bboard> /bee'bord/ [contraction of "bulletin board"] n. 1. Any
- electronic bulletin board; esp. used of <BBS> systems running of
- personal micros, less frequently of a USENET <newsgroup>. 2. At
- CMU and other colleges with similar facilities, refers to
- campuswide electronic bulletin boards. 3. The term "physical
- bboard" is sometimes used to refer to a non-electronic
- old-fashioned cork memo board. At CMU, it refers to a particular
- one outside the CS Lounge.
-
- In either of senses 1 or 2, the term is usually prefixed by the
- name of the intended board (`the Moonlight Casino bboard' or
- `market bboard'); however, if the context is clear, the better-read
- bboards may be referred to by name alone, as in [at CMU] "Don't
- post for-sale ads on general".
-
- <BBS> [acronym, Bulletin Board System] n. An electronic bulletin
- board system; that is, a message database where people can log in
- and leave broadcast messages for others grouped (typically) into
- topic areas. Thousands of local BBS systems are in operation
- throughout the U.S., typically run by amateurs for fun out of their
- homes on MS-DOS boxes with a single modem line each. Fans of
- USENET and Internet or the big commercial timesharing boards like
- CompuServe or GEnie tend to consider local BBSes the `low-rent
- district' of the hacker culture, but they serve a valuable function
- by knitting together lots of hackers and users in the
- personal-micro world who would otherwise be unable to exchange code
- at all.
-
- <beam> [from Star Trek Classic's "Beam me up, Scotty!"] vt. To
- transfer <softcopy> of a file electronically; most often in
- combining forms such as "beam me a copy" or "beam that over to
- his site". Compare <blast>, <snarf>, <BLT>.
-
- <beep> n.,v. Syn. <feep>. This term seems to be preferred among micro
- hobbyists.
-
- <bells and whistles> [by analogy with steam calliopes] n. Features
- added to a program or system to make it more <flavorful> from a
- hacker's point of view, without necessarily adding to its utility
- for its primary function. Distinguished from <chrome> which is
- intended to attract users. "Now that we've got the basic program
- working, let's go back and add some bells and whistles." However,
- no one seems to know what distinguishes a bell from a whistle.
-
- <belly up> [think of a dead fish] adj. Down, and it stinks. Used of
- hardware which suddenly stops working, especially when the
- <stoppage> is ideally timed to disrupt a development schedule.
- Esp. found in the phrase `to go belly up' or `gone belly up'. See
- also <casters up mode>, <down>.
-
- <benchmark> n. An inaccurate measure of computer performance. "In
- the computer industry, there are three kinds of lies: lies, damn
- lies, and benchmarks." Well known ones include Whetstone,
- Dhrystone, the Gabriel LISP benchmarks (see <Gabriel mode>),
- Rhealstone (see <h infix>) and LINPACK. See also <machoflops>,
- <MIPS>.
-
- <berklix> /ber'kliks/ n.,adj. Contraction of `Berkeley UNIX'. See
- <BSD>. Not used at Berkeley itself. May be more common among
- <suits> attempting to sound like cognoscenti than among hackers,
- who usually just say `BSD'.
-
- <berserking> vi. A <MUD> term meaning to gain points *only* by
- killing other players and mobiles (non-player characters). Hence a
- Berserker-Wizard is a player character that has achieved enough
- points to become a wizard, but only by killing other characters.
- Berserking is sometimes frowned upon because of its inherently
- antisocial nature, but some MUDs have a "berserker mode" in which a
- player becomes *permanently* berserk, can never flee out of a
- fight, cannot use magic, get no score for treasure, but they
- *do* get double kill points. "Berserker wizards can seriously
- damage your elf!"
-
- <Berzerkeley> [from "berserk"] /b@r-zer'klee/ [from the name of a
- now-deceased record label] n. Humorous, distortion of `Berkeley'
- used esp. to refer to the practices or products of the <BSD> UNIX
- hackers. See <software bloat>, <Missed'em-five>.
-
- <beta> /be't@/, /bay't@/ or (Commonwealth) /bee't@/ n. 1. In the
- <Real World>, software often goes through two stages of testing:
- Alpha (in-house) and Beta (out-house?). Software is said to be
- "in beta". 2. Anything that is new and experimental is in
- beta. "His girlfriend is in beta." 3. Beta software is
- notoriously buggy, so `in beta' connotes flakiness.
-
- Historical note: More formally, to beta-test is to test a
- pre-release (potentially unreliable) version of a piece of software
- by making it available to selected customers and users. This term
- derives from early nineteen-sixties terminology for product cycle
- checkpoints, first used at IBM but later standard throughout the
- industry. `Alpha Test' was the unit, module, or component test
- phase; `Beta Test' was initial system test. These themselves came
- from earlier A and B tests for hardware. The A-test was a
- feasibility and manufacturability evaluation done before any
- commitment to design and development. The B-test was a
- demonstration that the engineering model functioned as specified.
- The C test (corresponding to today's beta) was the B-test performed
- on early samples of the production design.
-
- <BFI> n. See <brute force and ignorance>. Also encountered in the
- variant "BFMI", `brute force and "massive" ignorance'.
-
- <bible> n. 1. One of a small number of fundamental source books
- such as <Knuth> and <K&R>. 2. The most detailed and
- authoritative reference for a particular language, operating
- system, or other complex software system.
-
- <BiCapitalization> adj. The act said to have been performed on
- trademarks such as VisiCalc, FrameMaker, TKsolver, EasyWriter and
- others which have been raised above the hoi polloi of common
- coinage by nonstandard capitalization. <Marketroid> types think
- this sort of thing is really cute, even the 2,317th time they do
- it. Compare <studlycaps>.
-
- <BIFF> /bif/ [USENET] n. The most famous <pseudo>, and the
- prototypical <newbie>. Articles from BIFF are characterized by
- all upper case letters sprinkled liberally with bangs, typos,
- `cute' misspellings (EVRY BUDY LUVS GOOD OLD BIFF CUZ HE"S A K00L
- DOOD AN HE RITES REEL AWESUM THINGZ IN CAPITULL LETTRS LIKE
- THIS!!!), use (and often misuse) of fragments of <talk mode>
- abbreviations, a long <sig block> (sometimes even a <doubled
- sig>), and unbounded naivete. BIFF posts articles using his elder
- brother's VIC-20. BIFF's location is a mystery, as his articles
- appear to come from a variety of sites. However, BITNET seems to
- be the most frequent origin. The theory that BIFF is a denizen of
- BITNET is supported by BIFF's (unfortunately invalid) electronic
- mail address: BIFF@BIT.NET.
-
- <biff> /bif/ vt. To notify someone of incoming mail; from the BSD
- utility `biff(1)' which was in turn named after the
- implementor's dog; it barked whenever the mailman came.
-
- <big-endian> [From Swift's `Gulliver's Travels' via a famous
- paper `On Holy Wars and a Plea for Peace' by Danny Cohen,
- USC/ISI IEN 137 dated 1 April 1980] 1. adj. Describes a computer
- architecture in which, within a given word, lower byte addresses
- have higher significance (the word is stored `big-end-first').
- Most processors including the IBM 370 family and the <PDP-10> and
- Motorola microprocessor families and most of the various RISC
- designs current in 1990 are big-endian. See <little-endian>,
- <middle-endian>, <NUXI problem>. 2. adj. An <internet
- address> the wrong way round. Most of the world follows the
- Internet standard and writes email addresses starting with the name
- of the computer and ending up with the name of the country. In the
- UK the Joint Networking Team decided to do it the other way round.
- E.g. `random@uk.ac.redbrick.cs'. Most gateway sites have
- <ad-hockery> in their mailers to handle this, but can still be
- confused. In particular the address above could be in the UK (code
- `uk') or Czechoslovakia (code `cs').
-
- <Big Grey Wall> n. What greets a <VMS> user searching for
- documentation. A full VMS kit comes on a pallet, the documentation
- taking up around 15 feet of shelf space before adding layered
- products such as compilers, databases, multivendor networking,
- programming tools etc. Recent (since VMS V5) DEC documentation
- comes with grey binders; under VMS V4 the binders were orange
- ("big orange wall"), and under V3 they were blue. See <VMS>.
-
- <big iron> n. Large, expensive, ultra-fast computers. Used generally
- of number crunching supercomputers such as Crays, but can include
- more conventional big commercial IBMish mainframes. Term of
- approval; compare <heavy metal>, oppose <dinosaur>.
-
- <Big Red Switch> [IBM] n. The power switch on a computer, esp. the
- `Emergency Pull' switch on an IBM <mainframe> or the power switch on
- an IBM-PC where it really is large and red. "This !@%$% <bitty
- box> is hung again; time to hit the Big Red Switch." Sources at
- IBM report that, in tune with the company's passion for <TLA>s,
- this is often acronymized as "BRS" (this has also become
- established on FidoNet and in the PC <clone> world). It is alleged
- that the emergency pull switch on a 360/91 actually fired a
- non-conducting bolt into the main power feed. Compare
- <power cycle>, <three-finger salute>.
-
- <bignum> /big'num/ [orig. from MIT MACLISP] n. 1. A
- multiple-precision computer representation for very large integers.
- More generally, any very large number. "Have you ever looked at
- the United States Budget? There's bignums for you!"
-
- Most computer languages provide a kind of data called `integer',
- but such computer integers are usually very limited in size;
- usually they must be smaller than 2^31 (2147483648) or (on a losing
- <bitty box>) 2^15 (32768). If you want to work with numbers
- larger than that, you have to use floating-point numbers, which are
- usually accurate to only six or seven decimal places. Computer
- languages that provide bignums can perform exact calculations on
- very large numbers, such as 1000! (the factorial of 1000, which is
- 1000 times 999 times 998 times ... times 2 times 1). For
- example, this value for 1000! was computed by the MACLISP system
- using bignums:
-
- 40238726007709377354370243392300398571937486421071
- 46325437999104299385123986290205920442084869694048
- 00479988610197196058631666872994808558901323829669
- 94459099742450408707375991882362772718873251977950
- 59509952761208749754624970436014182780946464962910
- 56393887437886487337119181045825783647849977012476
- 63288983595573543251318532395846307555740911426241
- 74743493475534286465766116677973966688202912073791
- 43853719588249808126867838374559731746136085379534
- 52422158659320192809087829730843139284440328123155
- 86110369768013573042161687476096758713483120254785
- 89320767169132448426236131412508780208000261683151
- 02734182797770478463586817016436502415369139828126
- 48102130927612448963599287051149649754199093422215
- 66832572080821333186116811553615836546984046708975
- 60290095053761647584772842188967964624494516076535
- 34081989013854424879849599533191017233555566021394
- 50399736280750137837615307127761926849034352625200
- 01588853514733161170210396817592151090778801939317
- 81141945452572238655414610628921879602238389714760
- 88506276862967146674697562911234082439208160153780
- 88989396451826324367161676217916890977991190375403
- 12746222899880051954444142820121873617459926429565
- 81746628302955570299024324153181617210465832036786
- 90611726015878352075151628422554026517048330422614
- 39742869330616908979684825901254583271682264580665
- 26769958652682272807075781391858178889652208164348
- 34482599326604336766017699961283186078838615027946
- 59551311565520360939881806121385586003014356945272
- 24206344631797460594682573103790084024432438465657
- 24501440282188525247093519062092902313649327349756
- 55139587205596542287497740114133469627154228458623
- 77387538230483865688976461927383814900140767310446
- 64025989949022222176590433990188601856652648506179
- 97023561938970178600408118897299183110211712298459
- 01641921068884387121855646124960798722908519296819
- 37238864261483965738229112312502418664935314397013
- 74285319266498753372189406942814341185201580141233
- 44828015051399694290153483077644569099073152433278
- 28826986460278986432113908350621709500259738986355
- 42771967428222487575867657523442202075736305694988
- 25087968928162753848863396909959826280956121450994
- 87170124451646126037902930912088908694202851064018
- 21543994571568059418727489980942547421735824010636
- 77404595741785160829230135358081840096996372524230
- 56085590370062427124341690900415369010593398383577
- 79394109700277534720000000000000000000000000000000
- 00000000000000000000000000000000000000000000000000
- 00000000000000000000000000000000000000000000000000
- 00000000000000000000000000000000000000000000000000
- 00000000000000000000000000000000000000000000000000
- 000000000000000000.
-
- 2. [Stanford] n. In backgammon, large numbers on the dice are
- called "bignums", especially a roll of double fives or double
- sixes. See also <El Camino Bignum>.
-
- <bigot> n. A person who is religiously attached to a particular
- language, operating system, editor or other tool (see <religious
- issues>). Usually found with a specifier; thus, "APL bigot",
- "VMS bigot", "EMACS bigot". A true bigot can be
- distinguished from a mere partisan or zealot by the fact that
- he/she refuses to learn alternatives. It is said "You can tell a
- bigot, but you can't tell him much." Compare <weenie>.
-
- <bit> [from the mainstream meaning and `binary digit'] n. 1. The
- unit of information; the amount of information obtained by asking a
- yes-or-no question for which the two outcomes are equally probable
- (this is straight technicalese). 2. A computational quantity that
- can take on one of two values, such as true and false, or zero and
- one. 3. A mental flag: a reminder that something should be done
- eventually. Example: "I have a bit set for you." (I haven't seen
- you for a while, and I'm supposed to tell or ask you something.)
- "I just need one bit from you" is a polite way of indicating that
- you intend only a short interruption for a question which can
- presumably be answered with a yes or no.
-
- A bit is said to be "set" if its value is true or one, and
- "reset" or "clear" if its value is false or zero. One
- speaks of setting and clearing bits. To "toggle" or
- "invert" a bit is to change it, either from zero to one or from
- one to zero. See also <flag>, <trit>, <mode bit>.
-
- <bit bang> n. Transmission of data on a serial line, when accomplished by
- rapidly tweaking a single output bit at the appropriate times
- (popular on certain early models of Prime computers, presumably
- when UARTs were too expensive, and on archaic Z-80 micros with a
- Zilog PIO but no SIO). The technique is a simple loop with eight
- OUT and SHIFT instruction pairs for each byte. Input is more
- interesting. And full duplex (doing input and output at the same
- time) is one way to separate the real hackers from the <wannabees>.
-
- <bit bashing> n. (also, "bit diddling" or "bit twiddling") Term
- used to describe any of several kinds of low-level programming
- characterized by manipulation of <bit>, <flag>, <nybble> and other
- smaller-than-character-sized pieces of data: these include
- low-level device control, encryption algorithms, checksum and
- error-correcting codes, hash functions, some flavors of graphics
- programming (see <bitblt>), and assembler/compiler code generation.
- May connote either tedium or a real technical challenge (more
- usually the former). "The command decoding for the new tape
- driver looks pretty solid but the bit-bashing for the control
- registers still has bugs." See also <bit bang>, <mode bit>.
-
- <bit bucket> n. The universal data sink (originally, the mythical
- receptacle used to catch bits when they fall off the end of a
- register during a shift instruction). Data that is discarded,
- lost, or destroyed is said to "go to the bit bucket". On <UNIX>,
- often used for </dev/null>. Sometimes amplified as "the Great Bit
- Bucket in the Sky". This term is used purely in jest. It's based
- on the fanciful notion that bits are objects that are not
- destroyed, but only misplaced. This appears to have been a
- mutation of an earlier term "bit box", about which the same
- legend was current; old-time hackers also report that trainees used
- to be told that when the CPU stored bits into memory it was
- actually pulling them "out of the bit box". See also <chad box>,
- <null device>.
-
- <bit decay> n. See <software rot>. People with a physics background
- tend to prefer this one for the analogy with particle decay. See
- also <computron>, <quantum bogodynamics>.
-
- <bit-paired keyboard> n. obs. A non-standard keyboard layout which
- seems to have originated with the Teletype ASR-33 and remained
- common for several years on early computer equipment. The TTY was
- a mechanical device (see <EOU>) so the only way to generate the
- character codes from keystrokes was by some physical linkage. The
- design of the ASR-33 assigned each character key a basic pattern
- which could be modified by flipping bits if the SHIFT or CTRL key
- were pressed. This meant that in order to avoid making the thing
- more of a Rube Goldberg kluge than it already was the design had to
- group on one keytop characters which shared the same basic bit
- pattern.
-
- Looking at the ASCII chart, we find:
-
- b7b6b5 b4b3b2b1 --- (in decimal)
- 0 1 2 3 4 5 6 7 8 9
-
- 0 1 0 sp ! " # $ % & ' ( )
-
- 0 1 1 0 1 2 3 4 5 6 7 8 9
-
- That's why the shifted decimal digits on a Teletype are arranged
- that way (except that 0 was moved over to the right-hand side).
- This was <not> the weirdest variant of <QWERTY> layout widely
- seen, by the way; that palm probably goes to the keycaps on IBM's
- even clunkier 029 card punch.
-
- When electronic terminals became popular in the early
- nineteen-seventies there was no agreement in the industry over how
- the keyboards should be laid out. Some vendors opted to emulate
- the Teletype keyboard, while others used the flexibility of
- electronic circuitry to make their product look like an office
- typewriter. These alternatives became known as `bit-paired' and
- `typewriter-paired' keyboards. To a hacker, the bit-paired
- keyboard seemed far more logical --- and because most hackers in
- those days had never learned to touch-type, there was little
- pressure from the pioneering users to adapt keyboards to the
- typewriter standard.
-
- The doom of the bit-paired keyboard was the large-scale
- introduction of the computer terminal into the normal office
- environment, where out-and-out technophobes were expected to use
- the equipment. The `typewriter-paired' standard became universal,
- `bit-paired' hardware was quickly junked or relegated to dusty
- corners, and both terms passed into obsolescence.
-
- <bit rot> n. Also <bit decay>. Hypothetical disease the existence
- of which has been deduced from the observation that unused programs
- or features will often stop working after sufficient time has
- passed, even if `nothing has changed'. The theory explains that
- bits decay as if they were radioactive. As time passes, the
- contents of a file or the code in a program will become
- increasingly garbled.
-
- There actually are physical processes that produce such effects
- (the alpha particles such as are found in cosmic rays can change
- the contents of a computer memory unpredictably, and various kinds
- of subtle media failures can corrupt files in mass storage) but
- they are quite rare.
-
- The term <software rot> is almost synonymous.
-
- <bitblt> /bit'blit/ n. [from <BLT>, q.v.] 1. Any of a closely
- related family of algorithms for moving and copying rectangles of
- bits between main and display memory on a bit-mapped device, or
- between two areas of either main or display memory (the requirement
- to do the Right Thing in the case of overlapping source and
- destination rectangles is what makes BitBlt tricky). 2. Synonym
- for <blit> or <BLT>
-
- <bits> n. 1. Information. Examples: "I need some bits about file
- formats." ("I need to know about file formats.") Compare <core
- dump>, sense #4. 2. Machine-readable representation of a document,
- specifically as contrasted with paper. "I only have a photocopy
- of the Jargon File; does anyone know where I can get the bits?".
- See <softcopy>. 3. Also in <the source of all good bits> n. A
- person from whom (or a place from which) information may be
- obtained. If you need to know about a program, a <wizard> might be
- the source of all good bits. The title is often applied to a
- particularly competent secretary.
-
- <bitty box> /bit'ee boks/ n. 1. A computer sufficiently small,
- primitive, or incapable as to cause a hacker acute claustrophobia at
- the thought of developing for it. Especially used of small,
- obsolescent, single-tasking-only personal machines like the Atari
- 800, Osborne, Sinclair, VIC-20, TRS-80, or IBM PC. 2. More
- generally, the opposite of `real computer' (see <Get a real
- computer!>). Pejorative. See also <mess-dos>, <toaster>, and
- <toy>.
-
- <bixie> /biks'ee/ n. Synonym for <emoticon> used on BIX (the Byte
- Information Exchange); many BIXers believe (incorrectly) the
- emoticon was invented there.
-
- <black art> n. A collection of arcane, unpublished, and (by
- implication) mostly ad-hoc techniques developed for a particular
- application or systems area. VLSI design and compiler code
- optimization were (in their beginnings) considered classic examples
- of black art; as theory developed they became <deep magic>, and
- once standard textbooks had been written became merely <heavy
- wizardry>. The huge proliferation of formal and informal channels
- for spreading around new computer-related technologies during the
- last twenty years has made both the term `black art' and what it
- describes less common than formerly. See also <voodoo
- programming>.
-
- <black box> n. Something which is sealed off (opaque) so the
- inner workings aren't visible, typically said of very complex
- algorithms. "That image restoration technique is a black box."
- The application to <hardware> is general technical English, of
- course.
-
- <black hole> n. When a piece of email or netnews disappears
- mysteriously between its origin and destination sites (that is,
- without returning a <bounce message>) it is commonly said to have
- "fallen into a black hole". Similarly, one might say "I think
- there's a black hole at foovax!" to convey suspicion that site
- foovax has been dropping a lot of stuff on the floor lately (see
- <drop on the floor>). The implied metaphor of email as
- interstellar travel is interesting in itself. Compare <bit
- bucket>.
-
- <blast> vt.,n. Synonym for <BLT>, used esp. for large data sends over
- a network or comm line. Opposite of <snarf>. Usage: uncommon.
- The variant "blat" has been reported. 2. vt. [HP/Apollo] Synonymous
- with <nuke> (sense #3). Sometimes the message "Unable to kill all
- processes. Blast them (y/n)?" would appear in the command window
- upon logout.
-
- <blazer> n. (also <'blazer>) Nickname for the Telebit Trailblazer,
- an expensive but extremely reliable and effective high-speed modem,
- popular at UNIX sites that pass large volumes of <email> and
- <USENET> news.
-
- <bletch> /blech/ [from Yiddish/German "brechen", to vomit] 1.
- interj. Term of disgust. Often in "Ugh, bletch".
-
- <bletcherous> /blech'@-rus/ adj. Disgusting in design or function;
- esthetically unappealing. This word is seldom used of people.
- "This keyboard is bletcherous!" (Perhaps the keys don't work very
- well, or are misplaced). See <losing>, <cretinous>, <bagbiter>,
- <bogus>, and <random>. <bletcherous> applies to the esthetics of
- the thing so described; similarly for <cretinous>. By contrast,
- something that is <losing> or <cretinous> may be failing to meet
- objective criteria. See <bogus> and <random>, which have richer
- and wider shades of meaning than any of the above.
-
- <blinkenlights> /blink'@n-lietz/ n. Front-panel diagnostic lights
- on a computer, esp. a <dinosaur>. Derives from the last word of
- the famous blackletter-Gothic "ACHTUNG! ALLES LOOKENSPEEPERS!"
- notice in mangled pseudo-German that once graced about half the
- computer rooms in the English-speaking world. The sign in its
- entirety ran:
-
- ACHTUNG! ALLES LOOKENSPEEPERS
- Das computermachine ist nicht fur gefingerpoken und mittengrabben.
- Ist easy schnappen der springenwerk, blowenfusen und poppencorken
- mit spitzensparken. Ist nicht fur gewerken bei das dumpkopfen.
- Das rubbernecken sichtseeren keepen hans in das pockets muss;
- relaxen und watchen das blinkenlichten.
-
- This silliness dates back at least as far as 1959 at Stanford
- University and had already gone international by the early '60s,
- when it was reported at London University's ATLAS computing site.
- There are several variants of it in circulation, some of which
- actually do end with the word `blinkenlights'. It is reported, by
- the way, that an analogous travesty in mangled English is posted in
- German computer laboratories.
-
- <blit> /blit/ vt. 1. To copy a large array of bits from one part of
- a computer's memory to another part, particularly when the memory
- is being used to determine what is shown on a display screen.
- "The storage allocator picks through the table and copies the good
- parts up into high memory, and at the end <blit>s it all back
- down again." See <bitblt>, <BLT>, <DD>, <cat>, <blast>,
- <snarf>. More generally, to perform some operation (such as
- toggling) on a large array of bits while moving them. 2.
- All-capsed as "BLIT": An early experimental bit-mapped terminal
- designed by Rob Pike at Bell Labs, later commercialized as the AT&T
- 5620. The folk etymology from `Bell Labs Intelligent Terminal' is
- incorrect.
-
- <blivet> [allegedly fr. a World War II military term meaning "ten
- pounds of manure in a five-pound bag"] n. 1. An intractable
- problem. 2. A crucial piece of hardware which can't be fixed or
- replaced if it breaks. 3. A tool that has been hacked over by so
- many incompetent programmers that it has become an unmaintainable
- tissue of hacks. 4. An out-of-control but unkillable development
- effort.
-
- This term has other meanings in other technical cultures; in
- particular, among experimental physicists and hardware engineers of
- various kinds it seems to mean any random object of unknown purpose
- (similar to hackish use of <frob>). It has also been used to
- describe an amusing trick-the-eye drawing resembling a
- three-pronged fork which appears to depict a three-dimensional
- object until one realizes that the parts fit together in an
- impossible way.
-
- <block> [From computer science usage] 1. vi. To delay while waiting
- for something. "We're blocking until everyone gets here." 2. in
- <block on> vt. To block, waiting for (something). "Lunch is
- blocked on Phil's arrival."
-
- <block transfer computations> n. From the Dr. Who television series:
- in the show, it referred to computations so fiendishly subtle and
- complex that they could not be performed by machines. Used to
- refer to any task that should be expressible as an algorithm in
- theory, but isn't.
-
- <blow away> vt. To remove files and directories from permanent storage
- with extreme prejudice, generally by accident. Oppose <nuke>.
-
- <blow out> vi. Of software, to fail spectacularly; almost as serious
- as <crash and burn>. See <blow past>.
-
- <blow past> vt. To <blow out> despite a safeguard. "The server blew
- past the 5K reserve buffer."
-
- <blow up> vi. [scientific computation] To become unstable. Suggests
- that the computation is diverging so rapidly that it will soon
- either overflow or at least go <nonlinear>.
-
- <blt> /bee ell tee/, /bl@t/ or (rarely) /belt/ n.,vt. 1. Synonym
- for <blit>. This is the original form of <blit> and the
- ancestor of <bitblt>. In these versions the usage has outlasted
- the <PDP-10> BLock Transfer instruction for which <BLT>
- derives; nowadays, the assembler mnemonic <BLT> almost always
- means `Branch if Less Than Zero'.
-
- <Blue Book> n. 1. Informal name for one of the three standard
- references on the page-layout and graphics-control language
- PostScript (`PostScript Language Tutorial and Cookbook', Adobe
- Systems, Addison-Wesley 1985, QA76.73.P67P68, ISBN 0-201-10179-3);
- the other two official guides are known as the <Green Book> and
- <Red Book>. 2. Informal name for one of the three standard
- references on Smalltalk: `Smalltalk-80: The Language and its
- Implementation'. David Robson, Addison-Wesley 1983, QA76.8.S635G64,
- ISBN 0-201-11371-63 (this is also associated with green and red
- books). 3. Any of the 1988 standards issues by the CCITT 9th
- plenary assembly. Until now, they have changed color each review
- cycle (1984 was <Red Book>, 1992 would be <Green Book>); however,
- it is rumored that this convention is going to be dropped before
- 1992. These include, among other things, the X.400 email spec and
- the Group 1 through 4 fax standards. See also <Red Book>, <Green
- Book>, <Silver Book>, <Purple Book>, <Orange Book>, <White Book>,
- <Pink-Shirt Book>, <Dragon Book>, <Aluminum Book>.
-
- <Blue Glue> [IBM] n. IBM's SNA (Systems Network Architecture) an
- incredibly <losing> and <bletcherous> protocol suite widely
- favored at commercial shops that don't know any better. The
- official IBM definition is "That which binds blue boxes
- together." See <fear and loathing>. It may not be irrelevant
- that <Blue Glue> is the trade name of a 3M product that is
- commonly used to hold down the carpet squares to the removable
- panel floors so common in computer installations. A correspondent
- at U.Minn. reports that the CS dept there has about 80 bottles of
- Blue Glue hanging about, so they often refer to any messy work to
- be done `using the blue glue".
-
- <blue goo> n. Term for `police' <nanobot>s intended to prevent <gray
- goo>, denature hazardous waste, destroy pollution, put ozone back
- into the stratosphere, prevent halitosis, and to promote truth,
- justice, and the American way, etc., etc. See <nanotechnology>.
-
- <BNF> /bee-en-ef/ n. 1. Acronym for `Backus-Naur Form', a
- metasyntactic notation used to specify the syntax of programming
- languages, command sets and the like. Widely used for language
- descriptions but seldom documented anywhere, so that it must
- usually be learned by osmosis from other hackers. Consider this
- BNF for a postal address:
-
- <postal-address> ::= <name-part> <street-address> <zip-part>
-
- <name-part> ::= <first-name> [<middle-part>] <last-name> <EOL>
-
- <middle-part> ::= <middle-name> | <middle-initial> "."
-
- <street-address> ::= [<apt>] <street-number> <street-name> <EOL>
-
- <zip-part> ::= <town-name> "," <state-code> <zip-code> <EOL>
-
- This translates into English as: A postal-address consists of a
- name-part, followed by a street-address part, followed by a
- zip-code part. A name-part consists of a first-name followed by an
- optional middle-part followed by a last-name. A middle-part
- consists of either a middle name or a middle initial followed by a
- dot. A street address consists of an optional apartment specifier
- followed by a street number, followed by a street name. A zip-part
- consts of a town-name, followed by a state code, followed by a zip
- code. Note that many things such as the format of a first-name,
- apartment specifier or zip-code are left unspecified. These are
- presumed to be obvious from context or detailed in another part of
- the specification the BNF is part of. See also <parse>.
-
- A major reason BNF is listed here is that the term is also used
- loosely for any similar notation, possibly containing some or all
- of the <glob> wildcards.
-
- 2. In SCIENCE-FICTION FANDOM, BNF expands to "Big Name Fan"
- (someone famous or notorious). Years ago a fan started handing out
- black-on-green BNF buttons at SF conventions. This confused the
- hacker contingent terribly.
-
- <boa> [IBM] n. Any one of the fat cables that lurk under the floor
- in a <dinosaur pen>. Possibly so called because they display a
- ferocious life of their own when you try to lay them straight and
- flat after they have been coiled for some time. It is rumored
- within IBM that 370 channel cables are limited to 200 feet because
- beyond that length the boas get dangerous...and it is worth
- noting that one of the major cable makers uses the trademark
- `Anaconda'.
-
- <boat anchor> n. 1. Like <doorstop> but more severe, implies that the
- offending hardware is irreversibly dead or useless. 2. Also used
- of people who just take up space.
-
- <bogo-sort> n. The generic bad algorithm. The origin is a
- fictitious contest at CMU to design the worst running time sort
- algorithm (Apparently after a student found an n^3 algorithm to do
- sorting while trying to design a good one). Bogo-sort is
- equivalent to throwing a deck of cards in the air, picking them up,
- then testing whether they are in order. If not, repeat. Usage:
- when one is looking at a program and sees a dumb algorithm, one
- might say "Oh, I see, this program uses bogo-sort." Compare
- <bogus>, <brute force>.
-
- <bogometer> n. See <bogosity>.
-
- <bogon> /boh'gon/ [by analogy with proton/electron/neutron, but
- doubtless reinforced after 1980 by the similarity to Douglas
- Adams's `Vogons', see Appendix C] n. 1. The elementary particle of
- bogosity (see <quantum bogodynamics>). For instance, "the
- ethernet is emitting bogons again", meaning that it is broken or
- acting in an erratic or bogus fashion. 2. A query packet sent from
- a TCP/IP domain resolver to a root server, having the reply bit set
- instead of the query bit. 3. Any bogus or incorrectly formed
- packet sent on a network. 4. By extension, used to refer
- by synecdoche to any bogus thing, as in "I'd like to go to lunch
- with you but I've got to go to the weekly staff bogon." 5. A
- person who is bogus or who says bogus things. This was
- historically the original usage, but has been overtaken by its
- derivatives in 1-4.
-
- <bogon filter> /boh'gon fil'tr/ n. Any device, software or hardware,
- which limits or suppresses the flow and/or emission of bogons.
- Example: "Engineering hacked a bogon filter between the Cray and
- the VAXen and now we're getting fewer dropped packets."
-
- <bogosity> /boh-go's@-tee/ n. 1. The degree to which something is
- <bogus>. At CMU, bogosity is measured with a <bogometer>;
- typical use: in a seminar, when a speaker says something bogus, a
- listener might raise his hand and say, "My bogometer just
- triggered". More extremely, "You just pinned my bogometer"
- means "You just said or did something so outrageously bogus that
- it is off the scale (pinning the bogometer needle at the highest
- possible reading)". The agreed-upon unit of bogosity is the
- microLenat (uL). The consensus is that this is the largest unit
- practical for everyday use. 2. The potential field generated by a
- bogon flux; see <quantum bogodynamics>.
-
- [Historical note: microLenat was invented as a attack against noted
- computer scientist Doug Lenat by a <tenured graduate student>.
- Doug had failed him on the AI Qual after the student gave "AI is
- bogus" as his answer to the questions. The slur is generally
- considered unmerited, but it has become a running gag nevertheless.
- Some of Doug's friends argue that "of course" a microLenat is
- bogus, since it's only one millionth of a Lenat. Others have
- suggested that the unit should be re-designated after the grad
- student, as the microReid.]
-
- <bogotify> /boh-go't@-fie/ vt. To make or become bogus. A program
- that has been changed so many times as to become completely
- disorganized has become bogotified. If you tighten a nut too hard
- and strip the threads on the bolt, the bolt has become bogotified
- and you'd better not use it any more. This coinage led to the
- notional <autobogotiphobia> (aw'to-boh-got'@-foh`bee-uh) n.,
- defined as the fear of becoming bogotified; but is not clear that
- the latter has ever been `live' slang rather than a self-conscious
- joke in jargon about jargon.
-
- <bogue out> /bohg owt/ vi. to becomes bogus, suddenly and
- unexpectedly. "His talk was relatively sane until somebody asked
- him a trick question, then he bogued out and did nothing but
- <flame> afterwards."
-
- <bogus> [WPI, Yale, Stanford] adj. 1. Non-functional. "Your patches
- are bogus." 2. Useless. "OPCON is a bogus program." 3.
- False. "Your arguments are bogus." 4. Incorrect. "That
- algorithm is bogus." 5. Unbelievable. "You claim to have solved
- the halting problem for Turing Machines? That's totally bogus."
- 6. Silly. "Stop writing those bogus sagas." Astrology is bogus.
- So is a bolt that is obviously about to break. So is someone who
- makes blatantly false claims to have solved a scientific problem.
- (This word seems to have some, but not all, of the connotations of
- <random>.)
-
- It is claimed that `bogus' was originally used in the hackish sense
- at Princeton, in the late 60s. A glossary of bogus words was
- compiled at Yale when the word was first popularized (see
- <autobogotiphobia> under <bogotify>). By the mid-1980s it was
- also current in something like the hackish sense in West Coast teen
- slang. A correspondent at Cambridge reports, by contrast, that
- these uses of bogus grate on British nerves; in Britain the word
- means rather specifically `counterfeit' as in "a bogus pound
- note".
-
- <Bohr bug> /bohr buhg/ [from quantum physics] n. A repeatable <bug>;
- one which manifests reliably under a possibly unknown but
- well-defined set of conditions. Antonym of <heisenbug>.
-
- <boink> /boynk/ [USENET, perh. fr the TV series "Moonlighting"]
- 1. To have sex with; compare <bounce>, sense #3. In Commonwealth
- hackish the variant "bonk" is more common. 2. After the
- original Peter Korn `Boinkon' <USENET> parties, used for almost
- any net social gathering, e.g. Miniboink, a small boink held by
- Nancy Gillett in 1988; Minniboink, a Boinkcon in Minnesota in 1989;
- Humpdayboinks, Wednesday get-togethers held in the San Francisco
- Bay Area. Compare <@-party>.
-
- <bomb> v. 1. General synonym for <crash>, esp. used of software or OS
- failures. "Don't run Empire with less than 32K stack, it'll bomb
- out." 2. Atari ST and Macintosh equivalents of <panic> or <guru>
- (sense 2), where icons of little black-powder bombs or mushroom
- clouds are displayed indicating the system has died. On the Mac
- this may be accompanied by a hexadecimal number indicating what
- went wrong, similar to the Amiga GURU MEDITATION number. <Mess-dos>
- machines tend to get <locked up> in this situation.
-
- <bondage-and-discipline language> A language such as Pascal, APL, or
- Prolog that, though ostensibly general-purpose, is designed so as
- to enforce an author's theory of "right programming" even though
- said theory is demonstrably inadequate for systems or even vanilla
- general-purpose programming. Often abbreviated `B&D'; thus, one
- may speak of things "having the B&D nature" etc. See <Pascal>;
- oppose <Languages of Choice>.
-
- <bonk/oif> interj. In the <MUD> community, it has become trdaitional
- to express pique or censure by `bonking' the offending person.
- There is a convention that one should acknowledge a bonk by saying
- `oif!' and a myth to the effect that failing to do so upsets the
- cosmic bonk/oif balance, causing much trouble in the universe.
- Some early MUDs which did not support <posing> implemented special
- commands for bonking and oifing See also <talk mode>.
-
- <boot> [from `by one's bootstraps'] vi.,n. To load and initialize
- the operating system on a machine. This usage is no longer slang
- (having become jargon in the strict sense), but it is sometimes
- used of human thought processes, as in the following exchange:
- "You've lost me." "O.K., reboot. Here's the theory...".
-
- Also found in the variants "cold boot" (from power-off condition)
- and "warm boot" (with the CPU and all devices already powered up,
- as after a hardware reset or software crash).
-
- Another variant: "soft boot", re-initialization of only part of a
- system, under control of other software that's still running: "If
- you're running the <mess-dos> emulator, control-alt-insert will
- cause a soft-boot of the emulator, while leaving the rest of the
- system running."
-
- Opposed to this there is "hard boot", which connotes hostility
- towards or frustration with the machine being booted. "I'll have
- to hard-boot this losing Sun" or "I recommend booting it hard."
-
- <bottleneck> adj. A slow code section, algorithm, or hardware
- subsystem through which computation must pass (see also <hot
- spot>); anything with lower <bandwidth> than is available for the
- rest of the computation. A system is said to be "bottlenecked"
- when performance is usually limited by contention for one
- particular resource (such as disk, memory or processor <clocks>);
- the opposite condition is called "balanced", which is more jargon
- in the strict sense and may be found in technical dictionaries.
-
- <bottom-up implementation> n. Hackish opposite of the straight
- technical term "top-down design". It is now received wisdom in
- most programming cultures that it is best to design from higher
- levels of abstraction down to lower, specifying sequences of action
- in increasing detail until you get to actual code. Hackers often
- find (especially in exploratory designs which cannot be closely
- specified in advance) that it works best to "build" things in the
- opposite order, by writing and testing a clean set of primitive
- operations and then knitting them together.
-
- <bounce> vi. 1. [UNIX, perhaps from the image of a thrown ball bouncing
- off a wall] An electronic mail message which is undeliverable and
- returns an error notification to the sender is said to `bounce'.
- See also <bounce message>. 2. [Stanford] To play volleyball. At
- one time there was a volleyball court next to the computer
- laboratory. From 5:00 PM to 7:00 PM was the scheduled maintenance
- time for the computer, so every afternoon at 5:00 the computer
- would become unavailable, and over the intercom a voice would cry ,
- "Bounce, bounce!" 3. To engage in sexual intercourse; prob. fr.
- the expression `bouncing the mattress', but influenced by
- Piglet's psychosexually-loaded "Bounce on me too, Tigger!" from
- the Winnie the Pooh books. 4. To casually reboot a system in
- order to clear up a transient problem. Reported primarily among
- <VMS> users.
-
- <bounce message> [UNIX] n. Notification message returned to sender by
- a site unable to relay <email> to the intended <Internet address>
- recipient or the next link in a <bang path> (see <bounce>).
- Reasons might include a nonexistent or misspelled username or a
- down relay site. Bounce messages can themselves fail, with
- occasionally ugly results; see <sorcerer's apprentice mode>.
-
- <box> [within IBM] n. 1. A computer; esp. in the construction "foo
- box" where foo is some functional qualifier, like `graphics', or
- the name of an OS (thus, "UNIX box", "MS-DOS box", etc. 2.
- Without qualification but within an <SNA>-using site, this refers
- specifically to an IBM front-end processor or FEP. An FEP is a
- small computer necessary to enable an IBM <mainframe> to communicate
- beyond the limits of the <dinosaur pen>. Typically used in
- expressions like the cry that goes up when an SNA network goes
- down, "Looks like the <box> has <fallen over>." See also
- <IBM>, <fear and loathing>, <Blue Glue>.
-
- <box comments> n. Comments (explanatory notes in code) which occupy
- several lines by themselves; so called because in assembler and C
- code they are often surrounded by a box in a style something like
- this:
-
- /*************************************************
- *
- * This is a boxed comment in C style
- *
- *************************************************/
-
- Common variants of this style omit the asterisks in column two or
- add a matching row of asterisks closing the right end of the box.
- The sparest variant omits all but the slashes and the asterisks at
- the extreme left; the `box' is implied. Oppose <winged
- comments>.
-
- <boxen> /bok'sn/ pl n. [by analogy with <VAXen>] Fanciful plural of
- <box> often encountered in the phrase "UNIX boxen", used to
- describe commodity <UNIX> hardware. The implication is that any
- two UNIX boxen are interchangeable.
-
- <boxology> n. The fine art of drawing diagrams using the `box'
- characters (mainly, `|', `-', and `+') in
- ASCII-monospace fonts. Also known as "character graphics".
-
- <brain-damaged> [generalization of `Honeywell Brain Damage' (HBD), a
- theoretical disease invented to explain certain utter cretinisms
- in Honeywell <Multics>] adj. Obviously wrong; <cretinous>;
- <demented>. There is an implication that the person responsible
- must have suffered brain damage, because he should have known
- better. Calling something brain-damaged is really bad; it also
- implies it is unusable, and that its failure to work is due to poor
- design rather than some accident.
-
- <brain-dead> adj. Brain-damaged in the extreme. Not quite like
- mainstream use, as it tends to imply terminal design failure rather
- than malfunction or simple stupidity.
-
- <brain dump> n. The act of telling someone everything one knows
- about a particular topic or project. Typically used when someone
- is going to let a new party maintain a piece of code. Analogous to
- an operating system <brain dump> in the sense that the state of
- the person's important "registers" are saved before exiting.
- Example: "You'll have to give me a brain dump on FOOBAR, before
- you start your new job at hackercorp." See <core dump> (sense
- #4). At Sun, this is also known as "TOI" (transfer of
- information).
-
- <braino> /bray'no/ n. Syn. for <thinko>.
-
- <branch to Fishkill> [IBM, from the location of one of their
- facilities] n. Any unexpected jump in a program that produces
- catastrophic or just plain weird results. See <hyperspace>.
-
- <brand brand brand> n. Humorous catch-phrase from <BartleMUDs>, in which
- player were described carrying a list of objects, the most
- common of which would usually be a brand. Often used as a joke
- in <talk mode> as in "Fred the wizard is here, carrying brand
- ruby brand brand brand kettle broadsword flamethrower". Prob.
- influenced by the infamous Monty Python `Spam' skit.
-
- <break> vt. 1. To cause to be broken (in any sense). "Your latest
- patch to the editor broke the paragraph commands." 2. (of a
- program) To stop temporarily, so that it may be examined for
- debugging purposes. The place where it stops is a "breakpoint".
- 3. To send an RS-232 break (125 msec. of line high) over a
- serial comm line. 4. [UNIX] To strike whatever key currently causes
- the tty driver to send SIGINT to the current process. Normally
- break (sense 3) or delete does this.
-
- <breakage> [IBM] n. The extra people that must be added to an
- organization because its master plan has changed; used esp. of
- software and hardware development teams.
-
- <breath of life packet> [Xerox PARC] n. An Ethernet packet that
- contained bootstrap code, periodically sent out from a working
- computer to infuse the `breath of life' into any computer on the
- network that had happened to crash. The crashed machines had
- hardware or firmware that would wait for such a packet after a
- catastrophic error.
-
- <bring X to its knees> n. Of a machine, operating system, piece of
- software, or algorithm; to present it with a load so extreme or
- pathological that it grinds virtually to a halt. "To bring a
- MicroVAX to its knees, try twenty users running <vi> --- or four
- running <EMACS>." Compare <hog>.
-
- <brittle> adj. Said of software that's functional but easily broken by
- changes in operating environment or configuration. Often describes
- the results of a research effort that were never intended to be
- robust, but can be applied to commercially developed software.
- Oppose <robust>.
-
- <broadcast storm> n. An incorrect packet broadcast on a network that
- causes most hosts to respond all at once, typically with wrong
- answers that start the process over again. Also called <network
- meltdown>. See also <Chernobyl packet>.
-
- <broken> adj. 1. Not working properly (of programs). 2. Behaving
- strangely; especially (of people), exhibiting extreme depression.
-
- <broket> /broh'k@t/ or /broh'ket/ [by analogy with `bracket': a
- `broken bracket'] n. Either of the characters `<' and `>'.
- This word originated as a contraction of the phrase `broken
- bracket', that is, a bracket that is bent in the middle. (At MIT,
- and apparently in <Real World> as well, these are usually called
- <angle brackets>.)
-
- <Brooks's Law> prov. "Adding manpower to a late software project
- makes it later" --- a result of the fact that the advantage from
- splitting work between N programmers is O(n), but the complexity
- and communications cost associated with coordinating and then
- merging their work is O(n^2). The quote is from Fred Brooks, a
- manager of IBMs OS/360 project and author of "The Mythical Man
- Month", an excellent early book on software engineering. Hackers
- have never forgotten this advice; too often, <management> does.
-
- <brute force> adj. Describes a certain kind of primitive programming
- style; broadly speaking, one where the programmer relies on the
- computer's processing power instead of using his/her own intelligence to
- simplify the problem, often ignoring problems of scale and applying
- naive methods suited to small problems directly to large ones.
-
- The <canonical> example of a brute force algorithm is associated
- with the `Travelling salesman problem' (TSP), a classical NP-hard
- problem: suppose a person is in Boston and wishes to drive to N
- other cities. In what order should he/she visit them in order to
- minimize the distance travelled? The brute force method is to
- simply generate all possible routes and compare the distances;
- while guaranteed to work and simple to implement, this algorithm is
- clearly very `stupid' in that it considers even obviously absurd
- routes (like going from Boston to Houston via San Francisco and New
- York, in that order). For small N it works well, but it rapidly
- becomes absurdly inefficient when N increases (for N=15, there are
- already 1,307,674,368,000 possible routes to consider). See also
- <NP->.
-
- A more simple-minded example of brute-force programming is finding
- the smallest number in a large list by first using an existing
- program to sort the list in ascending order, and then picking the
- first number off the front.
-
- Note that whether brute-force programming should be considered
- stupid or not depends on the context; if the problem isn't too big,
- the extra CPU time spent on a brute-force solution may cost less
- than the programmer time it would take to develop a more
- `intelligent' algorithm. Alternatively, a more intelligent
- algorithm may imply more long-term complexity cost and bug-chasing
- than are justified by the speed improvement.
-
- Ken Thompson, co-inventor of UNIX, is reported to have uttered the
- epigram "When in doubt, use brute force". He probably intended
- this as a <ha ha only serious>, but the original UNIX kernel's
- preference for simple, robust and portable algorithms over fragile
- `smart' ones does seem to have been a significant factor in the
- success of that OS. Like so many other tradeoffs in software
- design, the choice between brute force and complex, finely-tuned
- cleverness is often a difficult one that requires both engineering
- savvy and the most delicate esthetic judgement.
-
- <brute force and ignorance> n. A popular design technique at many
- software houses --- <brute force> coding unrelieved by any
- knowledge of how problems have been previously solved in elegant
- ways. Dogmatic adherence to design methodologies tends to
- encourage it. Characteristic of early <larval stage> programming;
- unfortunately, many never outgrow it. Often abbreviated BFI, as
- in: "Gak, they used a bubble sort! That's strictly from BFI."
- Compare <bogosity>.
-
- <BSD> /bee-ess-dee/ n. [acronym for Berkeley System Distribution] a
- family of <UNIX> versions for the DEC <VAX> developed by Bill
- Joy and others at University of California at Berkeley starting
- around 1980, incorporating TCP/IP networking enhancements and many
- other features. The BSD versions (4.1, 4.2, and 4.3) and
- commercial versions derived from them (SunOS, ULTRIX and Mt. Xinu)
- held the technical lead in the UNIX world until AT&T's successful
- standardization efforts after about 1986, and are still widely
- popular. See <UNIX>, <USG UNIX>.
-
- <bucky bits> /buh'kee bits/ [primarily Stanford] n. The bits produced
- by the CTRL and META shift keys, esp. on a Stanford (or Knight)
- keyboard (see <space-cadet keyboard>). It is rumored that these
- were in fact named for Buckminster Fuller during a period when he
- was consulting at Stanford. Unfortunately, legend also has it that
- `Bucky' was Niklaus Wirth's nickname when *he* was
- consulting at Stanford and that he first suggested the idea of the
- meta key, so its bit was named after him. See <double bucky>,
- <quadruple bucky>.
-
- <buffer overflow> n. What typically happens when an <OS> or
- application is fed data faster than it can handle. Used
- metaphorically of human mental processes. "Sorry, I got four phone
- calls in three minutes last night and lost your message to a buffer
- overflow."
-
- <bug> n. An unwanted and unintended property of a program or hardware,
- esp. one which causes it to malfunction. Antonym of <feature>.
- Examples: "There's a bug in the editor: it writes things out
- backwards." "The system crashed because of a hardware bug."
- "Fred is a winner, but he has a few bugs." (e.g. Fred is a good
- guy, but he has a few personality problems.)
-
- Some have said this term came from telephone company usage: "bugs
- in a telephone cable" were blamed for noisy lines, but this
- appears to be an incorrect folk etymology. Admiral Grace Hopper
- (an early computing pioneer better known for inventing COBOL) liked
- to tell a story in which a technician solved a persistent <glitch> in
- the Harvard Mark II machine by pulling an actual physical bug out
- from between the contacts of one of its relays, and she
- subsequently promulgated <bug> in its hackish sense as a joke about
- the incident (though, as she was careful to admit, she was not
- there when it happened). For many years the logbook associated
- with the incident and the actual bug in question (a moth) sat in a
- display case at the Naval Surface Warfare Center, and now resides
- in the Smithsonian. The entire story, with a picture of the
- logbook and the moth taped into it, is recorded in the Annals of
- the History of Computing (Volume 3, Number 3 (July 1981) on pages
- 285 and 286.
-
- Interestingly, the text of the log entry, which is said to read
- "First example of an actual computer `bug'." establishes that the
- term was already in use at the time; and a similar incident is
- alleged to have occurred on the original ENIAC machine. Indeed,
- the use of `bug' to mean an industrial defect was already
- established in Thomas Edison's time, and `bug' in the sense of an
- disruptive event goes back to Shakespeare! In the First Edition of
- Johnson's Dictionary a `bug' is a `frightful object'; this is
- traced to `bugbear', a Welsh term for a variety of mythological
- monster which (to complete the circle) has recently been
- reintroduced into the popular lexicon through fantasy role-playing
- games.
-
- In any case, in hacker's slang the word almost never refers to
- insects. Here is a plausible conversation that never actually
- happened:
-
- "This ant-farm has a bug."
-
- "What do you mean? There aren't even any ants in it."
-
- "That's the bug."
-
- <bug-for-bug compatible> n. Said of a design or revision the design
- of which has been badly compromised by a requirement to be
- compatible with <fossil>s or <misfeature>s in other programs or
- (esp.) previous releases of itself.
-
- <buglix> n. Pejorative term referring to DEC's Ultrix operating
- system in its earlier *severly* buggy versions. Still used to
- describe Ultrix but without venom. Compare <HP-SUX>.
-
- <bulletproof> adj. Used of an algorithm or implementation considered
- extremely <robust>; lossage-resistant; capable of correctly
- recovering from any imaginable exception condition. This is a rare
- and valued quality. Syn. <armor-plated>.
-
- <bum> 1. vt. To make highly efficient, either in time or space, often
- at the expense of clarity. "I managed to bum three more
- instructions out of that code." 2. n. A small change to an
- algorithm, program, or hardware device to make it more efficient.
- "This hardware bum makes the jump instruction faster." Usage:
- now uncommon, largely superseded by <tune>. Note that both these
- uses are rare in Commonwealth hackish, because in the parent
- dialects of English `bum' is interpreted as a rude synonym for
- `buttocks'.
-
- <bump> vt. Synonym for increment. Has the same meaning as C's ++
- operator. Used esp. of counter variables, pointers and index
- dummies in for, while, and do-until loops.
-
- <burble> vi. Like <flame>, but connotes that the source is truly
- clueless and ineffectual (mere flamers can be competent). A term
- of deep contempt.
-
- <burn-in period> n. 1. A factory test designed to catch systems with
- <marginal> components before they get out the door; the theory is
- that burn-in will protect customers by outwaiting the steepest part
- of the <infant mortality> curve. 2. A period of indeterminate
- length in which a person using a computer is so intensely involved
- in his project that he forgets basic needs such as food, drink,
- sleep, etc. See <hack mode>, <larval stage>.
-
- <busy-wait> vi. To wait on an event by <spin>ning through a tight or
- timed-delay loop that polls for the event on each pass, as opposed
- to setting up an interrupt handler and continuing execution on
- another part of the task. A wasteful technique, best avoided on
- time-sharing systems where a busy-waiting program may hog the
- processor. Syn. <spin-lock>
-
- <buzz> vi. 1. Of a program, to run with no indication of progress and
- perhaps without guarantee of ever finishing; esp. said of programs
- thought to be executing tight loops of code. The state of a
- buzzing program resembles <catatonia>, but you never get out of
- catatonia, while a buzzing loop may eventually end of its own
- accord. Example: "The program buzzes for about ten seconds trying
- to sort all the names into order." See <spin>. 2. [ETA Systems]
- To test a wire or PCB trace for continuity by applying an AC signal
- as opposed to applying a DC signal. Some wire faults will pass DC
- tests but fail a buzz test.
-
- <BWQ> /bee duhb'l-yoo kyoo/ [IBM] n. Buzz Word Quotient. The
- percentage of buzzwords in a speech or documents. Usually roughly
- proportional to <bogosity>. See <TLA>.
-
- <by hand> adv. Said of an operation (especially a repetititive, trivial
- and/or tedious one) which ought to be performed automatically by
- the computer, but which a hacker instead has to step tediously
- through. "My mailer doesn't have a command to include the text of
- the message I'm replying to, so I have to do it by hand". Compare
- <eyeball search>.
-
- <byte> n. One character of information; usually 8 bits, occasionally
- 9 (on 36-bit machines). The term originated in 1956 during the
- early design phase for the IBM Stretch computer; originally it was
- described as one to six bits (typical I/O equipment of the period
- used 6-bit chunks of information). The move to an 8-bit byte
- happened in late 1956, and this size was later adopted and made
- standard by the System/360. The term "byte" was coined by
- mutating the word `bite' so it would not be accidentally misspelt
- as <bit>. See also <nybble>.
-
- <bytesexual> /biet-seks'u-@l/ adj. Said of hardware, denotes
- willingness to compute or pass data in either <big-endian> or
- <little-endian> format (depending, presumably, on a <mode bit>
- somewhere). See also <NUXI problem>.
-
- {= C =}
-
- <C> n. 1. The third letter of the Latin alphabet. 2. The name of a
- programming language designed by Dennis Ritchie during the early
- 1970s and first used to implement <UNIX>. So called because many
- features derived from an earlier interpreter named `B' in
- commemoration of *its* parent, BCPL; before Bjarne Stroustrup
- settled the question by designing C++, there was a humorous debate
- over whether C's successor should be named `D' or `P'. C became
- immensely popular outside Bell Labs after about 1980 and is now the
- dominant language in systems and microcomputer applications
- programming. C is often described, with a mixture of fondness and
- disdain varying according to the speaker, as "a language which
- combines all the elegance and power of assembly language with the
- readability and maintainability of assembly language". See also
- <languages of choice>, <indent style>.
-
- <calculator> [Cambridge] n. Syn. for <bitty box>.
-
- <can> vt. To abort a job on a time-sharing system. Used esp. when the
- person doing the deed is an operator, as in `canned from the
- <console>'. Frequently used in an imperative sense, as in "Can
- that print job, the LPT just popped a sprocket!". Synonymous with
- <gun>. It is said that the ASCII character with mnemonic CAN
- (0011000) was used as a kill-job character on some early OSs.
-
- <canonical> adj. The usual or standard state or manner of something.
- This word has a somewhat more technical meaning in mathematics.
- For example, one sometimes speaks of a formula as being in
- canonical form. Two formulas such as `9 + x' and `x + 9' are
- said to be equivalent because they mean the same thing, but the
- second one is in canonical form because it is written in the usual
- way, with the highest power of `x' first. Usually there are fixed
- rules you can use to decide whether something is in canonical form.
- The slang meaning is a relaxation of the technical meaning (this
- generalization is actually not confined to hackers, and may be
- found throughout academia).
-
- A true story: One Bob Sjoberg, new at the MIT AI Lab, expressed
- some annoyance at the use of jargon. Over his loud objections, we
- made a point of using jargon as much as possible in his presence,
- and eventually it began to sink in. Finally, in one conversation,
- he used the word `canonical' in jargon-like fashion without
- thinking. Steele: "Aha! We've finally got you talking jargon
- too!" Stallman: "What did he say?" Steele: "Bob just used
- `canonical' in the canonical way."
-
- Of course, canonicality depends on context, but is implicitly
- defined as the way *hackers* normally do things. Thus, a
- hacker may claim with a straight face that "according to religious
- law" is *not* the canonical meaning of the word canonical.
-
- <card> n. 1. An electronic printed-circuit board (see also <tall
- card>, <short card>. 2. obs. Syn. <punched card>.
-
- <card walloper> n. An EDP programmer who grinds out batch programs
- that do stupid things like print people's paychecks. Compare
- <code grinder>. See also <punched card>, <eighty-column
- mind>.
-
- <cargo-cult programming> n. A style of (incompetent) programming
- dominated by ritual inclusion of code or program structures that
- serve no real purpose. A cargo-cult programmer will usually
- explain the extra code as a way of working around some bug
- encountered in the past, but usually, neither the bug nor the
- reason the code avoided the bug were ever fully understood (compare
- <shotgun debugging>).
-
- The term cargo-cult is a reference to aboriginal religions that
- grew up after World War II. The practices of these cults center on
- building elaborate mockups of airplanes and military style landing
- strips in the hope of bringing the return of the god-like airplanes
- that brought such marvelous cargo during the war.
-
- <casters-up mode> /cas'trz uhp mohd/ [IBM] n. Yet another synonym for
- `broken' or `down'.
-
- <casting the runes> n. The act of getting a <guru> to run a particular
- program and type at it because it never works for anyone else; esp.
- used when nobody can ever see what the guru is doing different from
- what J. Random Luser does. Compare <incantation>, <runes>,
- <examining the entrails>.
-
- <case and paste> [from "cut and paste"] n. 1. The addition of a new
- <feature> to an existing system by selecting the code from an
- existing feature and pasting it in with minor changes. Common in
- telephony circles because most operations in a telephone switch are
- selected using case statements. Leads to <software bloat>.
-
- <cat> [from "catenate" via <UNIX> `cat(1)'] vt. To spew an entire
- (notionally, large) file to the screen or some other output sink
- without pause; by extension, to dump large amounts of data at an
- unprepared target or with no intention of browsing it carefully.
- Usage: considered silly. Rare outside UNIX sites. See also <DD>,
- <BLT>.
-
- <catatonia> n. A condition of suspended animation in which something
- is so <wedged> that it makes no response. For example, if you are
- typing on a terminal and suddenly the computer doesn't even echo
- the letters back to the screen as you type, let alone do what
- you're asking it to do, then the computer is suffering from
- catatonia (possibly because it has crashed).
-
- <cdr> /ku'dr/ [from LISP] vt. To remove the first item from a list of
- things. In the form "cdr down", to trace down a list of
- elements. "Shall we cdr down the agenda?" Usage: silly. See
- also <loop through>.
-
- <chad> /chad/ n. 1. The perforated edge strips on printer paper, after
- they have been separated from the printed portion. Also called
- <selvage> and <perf>. 2. obs. the confetti-like paper bits punched
- out of cards or paper tape; this was also called "chaff", "computer
- confetti", and "keypunch droppings".
-
- Historical note: one correspondent believes `chad' (sense #2)
- derives from the Chadless keypunch (named for its inventor), which
- cut little u-shaped tabs in the card to make a hole when the tab
- folded back, rather than punching out a circle/rectangle; it was
- clear that if the `Chadless' keypunch didn't make them, then the
- stuff that other keypunches made had to be `chad'.
-
- <chad box> n. <Iron Age> computers contained boxes inside them, about
- the size of a lunchbox, that held the <chad>, squares of paper
- punched out of punch cards. You had to open the covers of the card
- punch periodically and empty the chad box. The <bit bucket> is the
- equivalent device in the CPU enclosure, which was typically across
- the room in another great grey-and-blue box.
-
- <chain> [orig. from BASIC's CHAIN statement] vi. When used of
- programming languages, refers to a statement that allows a parent
- executable to hand off execution to a child without going through
- the <OS> command interpreter. The state of the parent program is
- lost and there is no returning to it. Though this facility used to
- be common on memory-limited micros and is still widely supported
- for backward compatibility, the jargon usage is semi-obsolescent;
- in particular most UNIX programmers will think of this as an
- <exec>. Oppose the more modern <subshell>.
-
- <char> /keir/ or /char/; rarely, /kar/ n. Shorthand for `character'.
- Esp. used by C programmers, as `char' is C's typename for
- character data.
-
- <chase pointers> 1. vi. To go through multiple levels of indirection,
- as in traversing a linked list or graph structure. Used esp. by
- programmers in C, where explicit pointers are a very common data
- type. This is almost jargon in the strict sense, but remains slang
- when used of human networks. "I'm chasing pointers. Bob said you
- could tell me who to talk to about..." 2. [Cambridge] <pointer
- chase> or <pointer hunt>: the process of going through a dump
- (interactively or on a large piece of paper printed with hex
- <runes>) following dynamic data-structures. Only used in a
- debugging context.
-
- <chemist> [Cambridge] n. Someone who wastes CPU time on
- number-crunching when you'd far rather the CPU was doing something
- more productive, such as working out anagrams of your name or
- printing Snoopy calendars or running <life> patterns. May or may
- not refer to someone who actually studies chemistry.
-
- <Chernobyl packet> /cher-noh'b@l pak'@t/ n. An IP Ethergram with both
- source and destination Ether and IP address set as the respective
- broadcast address. So called because it induces <network
- meltdown>.
-
- <choke> vt. To reject input, often ungracefully. "I tried building
- an <EMACS> binary to use <X>, but `cpp' choked on all
- those #defines." See <barf>, <gag>, <vi>.
-
- <chiclet keyboard> n. A keyboard with small rectangular or
- lozenge-shaped rubber or plastic keys that look like pieces of
- chewing-gum (Chiclet is a brand-name and also the Spanish common
- noun for the stuff). Used esp. to describe the original PCjr
- keyboard. Vendors unanimously liked these because they're cheap,
- and a lot of early portable and laptop products got launched using
- them. Customers rejected the idea with almost equal unanimity, and
- chiclets are not often seen on anything larger than a digital watch
- any more.
-
- <chomp> vt. To lose; to chew on something of which more was bitten off
- than one can. Probably related to gnashing of teeth. See
- <bagbiter>. A hand gesture commonly accompanies this, consisting
- of the four fingers held together as if in a mitten or hand puppet,
- and the fingers and thumb open and close rapidly to illustrate a
- biting action (much like what the PacMan does in the classic video
- game, though this pantomime seems to predate that). The gesture
- alone means "chomp chomp" (see Verb Doubling). The hand may be
- pointed at the object of complaint, and for real emphasis you can
- use both hands at once. For example, to do this to a person is
- equivalent to saying "You chomper!" If you point the gesture at
- yourself, it is a humble but humorous admission of some failure.
- You might do this if someone told you that a program you had
- written had failed in some surprising way and you felt dumb for not
- having anticipated it.
-
- <chomper> n. Someone or something that is chomping; a loser. See
- <loser>, <bagbiter>, <chomp>.
-
- <Christmas tree> n. A kind of RS-232 line tester or breakout box
- featuring rows of blinking red and green LEDs like Christmas
- lights.
-
- <Christmas tree packet> n. A packet with every single option set for
- whatever protocol is in use.
-
- <chrome> [from automotive slang via wargaming] n. Showy features added
- to attract users, but which contribute little or nothing to the
- power of a system. "The 3D icons in Motif are just chrome!"
- Distinguished from <bells and whistles> by the fact that the latter
- are usually added to gratify developers' own desires for
- featurefulness.
-
- <Church of the Sub-Genius> n. A mutant offshoot of <Discordianism>
- launched in 1981 as a spoof of fundamentalist Christianity by the
- `Rev.' Ivan Stang, a brilliant satirist with a gift for
- promotion. Popular among hackers as a rich source of bizarre
- imagery and references such as: `Bob' the divine
- drilling-equipment salesman, the Benevolent Space Xists and the
- Stark Fist of Removal. Much Sub-Genius theory is concerned with
- the acquisition of the mystical substance or quality of `slack'.
- See also <ha ha only serious>.
-
- <Cinderella book> [CMU] n. `Introduction to Automata Theory,
- Languages', and Computation', by John Hopcroft and Jeffrey Ullman,
- Addison-Wesley, 1979. So-called because the cover depicts a girl
- (notionally Cinderella) sitting in front of a Rube Goldberg device
- and holding a rope from that device. The back cover depicts the
- girl with the Rube Goldberg in shambles after having pulled on the
- rope.
-
- <Classic C> /klas'ik see/ [a play on "Coke Classic"] n. The C
- programming language as defined in the first edition of <K&R>,
- with some small additions. It is also known as `K&R C.' The
- name came into use during the standardization process for C by the
- ANSI X3J11 committee. Also <C Classic>. This is sometimes
- applied elsewhere: thus, `X Classic' where X = Star Trek (referring
- to the original TV series), or X = PC (referring to IBM's ISA-bus
- machines as opposed to the PS/2 series). This construction is
- especially used of product series in which the newer versions are
- considered serious losers relative to the older ones.
-
- In one particularly strong parallel to the Coke fiasco, Apple
- Computer released a new computer called the Mac Classic.
- Unfortunately, just as the Coca Cola company had `restored' Coke
- Classic made with nasty-tasting corn syrup rather than real sugar,
- the new Mac Classic was inferior to the machine Mac hackers had
- always called the `classic Mac' (the original 128K Macintosh) causing
- much confusion and upset.
-
- <clean> adj. Used of hardware or software designs, implies `elegance
- in the small', that is, a design or implementation which may not
- hold any surprises but does things in a way that is reasonably
- intuitive and relatively easy to comprehend from the outside. The
- antonym is <grungy> or <crufty>.
-
- <CLM> [Sun, `Career Limiting Move'] 1. n. Endangering one's future
- prospects of getting plum projects and raises, also possibly one's
- job. "He used a bubblesort! What a CLM!" 2. adj. denoting
- extreme severity of a bug, discovered by a customer and obviously
- due to poor testing: "That's a CLM bug!"
-
- <clobber> vt. Mistakenly overwrite. As in "I walked off the end of
- the array and clobbered the stack." Compare <mung>, <scribble>,
- <trash>, and <smash the stack>.
-
- <clocks> n. Processor logic cycles, so called because each generally
- corresponds to one clock pulse in the processor's timing. The
- relative execution times of instructions on a machine are usually
- discussed in clocks rather than absolute fractions of a second.
- Compare <cycle>.
-
- <clone> n. 1. An exact duplicate, as in "Our product is a clone of
- their product." Implies a legal re-implementation from
- documentation or by reverse-engineering, as opposed to the
- illegalities under sense #3. Also connotes lower price. 2. A
- shoddy, spurious copy, as in "Their product is a clone of our
- product." 3. A blatant ripoff, most likely violating copyright,
- patent, or trade secret protections, as in "Your product is a
- clone of my product." This usage implies legal action is pending.
- 4. A "PC clone"; a PC-BUS/ISA or EISA-compatible 80x86 based
- microcomputer (this use is sometimes spelled "klone"). These
- invariably have much more bang for the bug than the IBM prototypes
- they resemble. 5. In the construction "UNIX clone": An OS
- designed to deliver a UNIX-lookalike environment sans UNIX license
- fees, or with additional `mission-critical' features such as
- support for real-time programming.
-
- <close> /klohz/ [from the verb `to close', thus the `z' sound] 1. n.
- Abbreviation for `close (or right) parenthesis', used when
- necessary to eliminate oral ambiguity. See <open>. 2. adj. Of a
- delimiting character, used at the right-hand end of a grouping.
- Used in such terms as "close parenthesis", "close bracket",
- etc. 3. vt. To release a file or communication channel after
- access.
-
- <clustergeeking> /kluh'ster-gee`king/ [CMU] n. An activity defined by
- spending more time at a computer cluster doing CS homework than
- most people spend breathing.
-
- <COBOL> n. Synonymous with <evil>. Hackers believe all COBOL
- programmers are <suit>s or <code grinder>s, and no self-respecting
- hacker will ever admit to having learned the language. Its very
- name is seldom uttered without ritual expressions of disgust or
- horror.
-
- <COBOL fingers> /koh'bol fing'grs/ n. Reported from Sweden, a
- (hypothetical) disease one might get from programming in COBOL.
- The language requires extremely voluminous code. Programming too
- much in COBOL causes the fingers to wear down (by endless typing),
- until short stubs remain. This malformity is called "COBOL
- fingers". "I refuse to type in all that source code again, it
- will give me cobol fingers!"
-
- <code grinder> n. 1. A <suit>-wearing minion of the sort hired in
- legion strength by banks and insurance companies to implement
- payroll packages in RPG and other such unspeakable horrors. This
- is about as far from hackerdom as you can get and still touch a
- computer. Connotes pity. See <Real World>. 2. Used of or to a
- hacker, a really serious slur on the person's creative ability;
- connotes a design style characterized by primitive technique,
- rule-boundedness, and utter lack of imagination. Compare <card
- walloper>.
-
- <code police> [by analogy with `thought police'] n. A mythical team
- of Gestapo-like storm troopers that might burst into one's office
- and arrest one for violating style rules. May be used either
- seriously, to underline a claim that a particular style violation
- is dangerous, or ironically, to suggest that the practice under
- discussion is condemned mainly by anal-retentive weenies. The
- ironic usage is perhaps more common.
-
- <codewalker> n. A program component that traverses other programs for
- a living. Compilers have codewalkers in their front ends; so do
- cross-reference generators and some database front-ends. Other
- utility programs which try to do too much with source code may turn
- into codewalkers. As in "This new vgrind feature would require a
- codewalker to implement."
-
- <coefficient of x> n. Hackish speech makes rather heavy use of
- pseudo-mathematical metaphors. Four particularly important ones
- involve the terms "coefficient", "factor", "index" and
- "quotient". They are often loosely applied to things you
- cannot really be quantitative about, but there are subtle
- distinctions between them that convey information about the way the
- speaker mentally models whatever he or she is describing.
-
- "Foo factor" and "foo quotient" tend to describe something
- for which the issue is one of presence or absence. The canonical
- example is <fudge factor>. It's not important how much you're
- fudging; the term simply acknowledges that some fudging is needed.
- You might talk of liking a movie for its silliness factor.
- Quotient tends to imply that the property is a ratio of two
- opposing factors: "I would have won except for my luck quotient.'
- This could also be, "I would have won except for the luck factor",
- but using *quotient* emphasises that it was bad luck
- overpowering good luck.
-
- "Foo index" and "coefficient of foo" both tend to imply
- that foo is, if not strictly measurable, at least something that
- can be larger or smaller. Thus, you might refer to a paper or
- person as having a "high bogosity index", whereas you would be less
- likely to speak of a "high bogosity factor". "Foo index" suggests
- that foo is a condensation of many quantities, as in the mundane
- cost of living index; "coefficient of foo" suggests that foo is a
- fundamental quantity, as in a coefficient of friction. The choice
- between these terms is often one of personal preference; e.g., some
- people might feel that bogosity is a fundamental attribute and thus
- say "coefficient of bogosity", whereas others might feel it is a
- combination of factors and thus say "bogosity index".
-
- <cokebottle> /kohk'bot-l/ n. Any very unusual character,
- particularly one that isn't on your keyboard so you can't type it.
- MIT people used to complain about the `control-meta-cokebottle'
- commands at SAIL, and SAIL people complained right back about the
- `altmode-altmode-cokebottle' commands at MIT. After the demise of
- the <space-cadet keyboard> cokebottle faded away as serious
- usage, but was often invoked humorously to describe an
- (unspecified) weird or non-intuitive keystroke command. It may be
- due for a second inning, however. The OSF/Motif window manager,
- mwm, has a reserved keystroke for switching to the default set of
- keybindings and behaviour. This keystroke is (believe it or not)
- `control-shift-meta-exclam'. Since the exclamation point looks a
- lot like an upside down coke bottle, Motif hackers have begun
- referring to this keystroke as cokebottle. See also
- <quadruple-bucky>.
-
- <COME FROM> n. A semi-mythical language construct dual to the `go
- to'; COME FROM <label> would cause the referenced label to act as
- a sort of trapdoor, so that if the program ever reached it control
- would quietly fall through to the statement following the COME
- FROM. COME FROM was first proposed in a Datamation article of
- December 1973 (reprinted in the April 1984 issue of CACM) that
- parodied the then-raging `structured programming' wars (see
- <considered harmful>). Mythically, some variants are the
- "assigned come from", and the "computed come from"
- (parodying some nasty control constructs in BASIC and FORTRAN).
- Notionally, multi-tasking could be implemented by having more than
- one COME FROM statement coming from the same label.
-
- In some ways the Fortran DO loop is a form of COME FROM statement,
- since after the terminating label is reached control continues at
- the statement following the DO. Some generous Fortrans would even
- allow arbitrary statements for the label, for example:
-
- DO 10 I=1,LIMIT
- C imagine many lines of code here, leaving the original DO
- C statement lost in the spaghetti...
- WRITE(6,10) I,FROB(I)
- 10 FORMAT(1X,I5,G10.4)
-
- While sufficiently astonishing to the unsuspecting reader, this
- form of COME FROM statement isn't completely general. After all,
- control will eventually pass to the following statement. The
- implementation of the general form was left to Univac Fortran,
- c.1975. The statement `AT 100' would perform a `COME FROM 100'. It
- was intended strictly as a debugging aid, with dire consequences
- promised to anyone so deranged as to use it in production code.
- COME FROM was supported under its own name for the first time
- fifteen years later, in C-INTERCAL (see <INTERCAL>,
- <retrocomputing>); knowledgeable observers are still reeling from
- shock.
-
- <comment out> vt. To surround a section of code with comment
- delimiters in order to prevent it from being compiled. This may be
- done for a variety of reasons, most commonly when the code is
- redundant or obsolete but you want to leave it in the source to
- make the intent of the active code clearer.
-
- <com[m] mode> /kom mohd/ [from the ITS feature supporting on-line
- chat, spelled with one or two Ms] Syn. for <talk mode>.
-
- COMMONWEALTH HACKISH n. Hacker slang as spoken outside the U.S.,
- esp. in the British Commonwealth. It is reported that Commonwealth
- speakers are more likely to pronounce `char', `soc' etc. as spelled
- (/char/, /sok/) as opposed to American /keir/ or /sohsh/. Dots in
- names tend to be pronounced more often (/sok dot wi'bble/ rather
- than /sohsh wib'ble/). <Meta-> may be pronounced /mee't@-/;
- similarly, Greek letter beta is often /bee't@/, zeta is often
- /zee'ta/ and so forth. Preferred metasyntactic variables include
- EEK, OOK, FRODO and BILBO; WIBBLE, WOBBLE and in emergencies
- WUBBLE; BANANA, WOMBAT, FROG, <fish> and so on and on.
-
- Alternatives to verb doubling include suffixes `-o-rama',
- `frenzy' (as in feeding frenzy) and `city' (as in "barf
- city!" "hack-o-rama!" "core dump frenzy!"). Finally, note
- that the American usages `parens' `brackets' and `braces' for (),
- [], and {} are uncommon; Commonwealth hackish prefers
- `bracket', `square bracket' and `curly bracket'. Also, the
- use of `pling' for <bang> is common outside the U.S..
-
- See also <calculator>, <chemist>, <console jockey>, <fish>,
- <grunge>, <hakspek>, <heavy metal>, <leaky heap>, <lord high
- fixer>, <noddy>, <psychedelicware>, <plingnet>, <raster blaster>,
- <seggie>, <spin-lock>, <terminal junkie>, <tick-list features>,
- <weeble>, <weasel>, <YABA> and notes or definitions under <Bad
- Thing>, <barf>, <bogus>, <bum>, <chase pointers>, <cosmic rays>,
- <crippleware>, <crunch>, <dodgy>, <gonk>, <nybble>, <root>,
- <tweak>, and <xyzzy>.
-
- <compact> adj. Of a design, describes the valuable property that it
- can all be apprehended at once in one's head. This generally means
- the thing created from the design can be used with greater facility
- and fewer errors than an equivalent tool that is not compact. Note
- that compactness does not imply triviality or lack of power; for
- example, C is compact and Fortran is not, but C is more powerful
- than Fortran. Designs become non-compact through accreting
- features and <cruft> that don't merge cleanly into the overall
- design scheme.
-
- <compress> [UNIX] vt. When used without a qualifier, generally refers
- to <crunch>ing of a file using a particular C implementation of
- Lempel-Ziv compression by James A. Woods et al. and widely
- circulated via <USENET>. Use of <crunch> itself in this sense is
- rare among UNIX hackers.
-
- <computer geek> n. One who eats (computer) bugs for a living. One
- who fulfills all of the dreariest negative stereotypes about
- hackers: an asocial, malodorous, pasty-faced monomaniac with all
- the personality of a cheese grater. Cannot be used by outsiders
- without implied insult to all hackers; compare black-on-black usage
- of `nigger'. A computer geek may be either a fundamentally
- clueless individual or a proto-hacker in <larval stage>. Also
- called "turbo nerd", "turbo geek". See also
- <clustergeeking>, <wannabee>, <terminal junkie>.
-
- <computron> /kom'pyoo-tron`/ n. 1. A notional unit of computing power
- combining instruction speed and storage capacity, dimensioned
- roughly in instructions-per-sec times megabytes-of-main-store times
- megabytes-of-mass-storage. "That machine can't run GNU Emacs, it
- doesn't have enough computrons!" This usage is usually found in
- metaphors that treat computing power as a fungible commodity good
- like a crop yield or diesel horsepower. See <bitty box>, <get a
- real computer>, <toy>, <crank>. 2. A mythical subatomic particle
- that bears the unit quantity of computation or information, in much
- the same way that an electron bears one unit of electric charge
- (see <bogon>). An elaborate pseudo-scientific theory of computrons
- has been worked out based on the physical fact that the molecules
- in a solid object move more rapidly as it is heated. It is argued
- that an object melts because the molecules have lost their
- information about where they are supposed to be (that is, they have
- emitted computrons). This explains why computers get so hot and
- require air conditioning; they use up computrons. Conversely, you
- should be able to cool down an object by placing it in the path of
- a computron beam. It is believed that this may also explain why
- machines that work at the factory fail in the computer room ---
- because the computrons there have been all used up by your other
- hardware.
-
- <condom> n. The protective plastic baggy that accompanies 3.5"
- microfloppy diskettes. Rarely, used of (paper) disk envelopes.
- Unlike the write protect, the condom (when left on) not only
- impedes the practice of <SEX>, it has shown to have a high
- failure rate as drive mechanisms attempt to access the disk.
-
- <connector conspiracy> [probably came into prominence with the
- appearance of the KL-10, none of whose connectors match anything
- else] n. The tendency of manufacturers (or, by extension,
- programmers or purveyors of anything) to come up with new products
- which don't fit together with the old stuff, thereby making you buy
- either all new stuff or expensive interface devices.
-
- <cons> /konz/ or /cons/ [from LISP] 1. v. To add a new element to a
- list, esp. at the top. 2. "cons up": vt. To synthesize from
- smaller pieces: "to cons up an example".
-
- <considered harmful> adj. Edsger Dijkstra's infamous March 1968 CACM
- note, `Goto Statement Considered Harmful', fired the first salvo
- in the `structured programming' wars. Amusingly, ACM considered
- the resulting acrimony sufficiently harmful that they will (by
- policy) no longer print an article which takes up that assertive a
- position against a coding practice. In the ensuing decades a large
- number of both serious papers and parodies have borne titles of the
- form `X considered Y'. The `structured programming' wars
- eventually blew over with the realization that both sides were
- wrong, but use of such titles has remained as a persistent minor
- in-joke (the `considered silly' found at various places in this
- jargon file is related).
-
- <console> n. 1. The operator's station of a <mainframe>. In times
- past this was a privileged location which conveyed godlike powers
- to he (almost invariably a he) with his fingers on the keys. Under
- UNIX and other modern timesharing OSs it is just the tty the system
- was booted from. Some of the mystique remains, however, and it is
- traditional for sysadmins to post urgent messages to all users from
- /dev/console. 2. On microcomputer UNIX boxes: the main screen and
- keyboard (as opposed to character-only terminals talking to a
- serial port board). Typically only the console can do real
- graphics or run <X>. See also <CTY>.
-
- <console jockey> n. See <terminal junkie>.
-
- <content-free> adj. Ironic analogy with `context-free', used of a
- message which adds nothing to the recipient's knowledge. Though
- this adjective is sometimes applied to <flamage>, it more usually
- connotes derision for communication styles which exalt form over
- substance, or are centered on concerns irrelevant to the subject
- ostensibly at hand. Perhaps most used with reference to speeches
- by company presidents and like animals. "Content-free?
- Uh...that's anything printed on glossy paper".
-
- <Conway's Law> prov. The rule that the organization of the software and
- the organization of the software team will be congruent; originally
- stated as "If you have four groups working on a compiler, you'll
- get a four-pass compiler."
-
- This was originally promulgated by Melvin Conway, an early
- proto-hacker who wrote an assembler for the Burroughs 220 called
- SAVE. The name `SAVE' didn't stand for anything, it was just that
- you lost fewer decks and listings because they all had SAVE written
- on top of them.
-
- <cookie> n. A handle, transaction ID or other form of agreement
- between cooperating programs. "I give him a packet, he gives me
- back a cookie." See <magic cookie>.
-
- <cookie monster> [from `Sesame Street'] n. Any of a family of
- early (1970s) hacks reported on <TOPS-10>, <ITS> and elsewhere
- that would lock up either the victim's terminal (on a time-sharing
- machine) or the <console> (on a batch <mainframe>), repeatedly
- demanding "I WANT A COOKIE". The required responses ranged in
- complexity from "COOKIE" through "HAVE A COOKIE" and upward.
- See also <wabbit>.
-
- <copper> n. Conventional electron-carrying network cable (which uses
- copper as a core conductor), as opposed to fiber-optic cable (or,
- say, a short-range microwave link). Oppose <light pipe>.
-
- <copy protection> [MS-DOS] n. A clever method of preventing
- incompetent pirates from stealing software and legitimate customers
- from using it. Considered silly.
-
- <copybroke> adj. Used to describe an instance of a copy-protected program
- which has been `broken'; that is, a copy with the copy-protection
- scheme disabled. Syn. <copywronged>.
-
- <copyleft> /kop'ee-left/ n. 1. The copyright notice (`General Public
- License') carried by <GNU EMACS> and other Free Software
- Foundation software, granting re-use and reproduction rights to all
- comers (but see also <General Public Virus>). 2. By extension, any
- copyright notice intended to achieve similar aims.
-
- <copywronged> [play on "copyright"] adj. Syn. for <copybroke>.
-
- <core> n. Main storage or RAM. Dates from the days of ferrite-core
- memory; now archaic, but still used in the UNIX community and by
- old-time hackers or those who would sound like same. Some derived
- idioms are quite current; "in core", for example, means `in
- memory' (as opposed to `on disk'), and both <core dump> and the
- "core image" or "core file" produced by one are preferred
- terms.
-
- <core dump> n. [common <Iron Age> slang, preserved by UNIX] 1. A
- symptom of catastrophic program failure due to internal error. 2.
- By extension, used for humans passing out, vomiting, or registering
- extreme shock. "He dumped core. All over the floor. What a
- mess." "He heard about ... and dumped core." 3.
- Occasionally used for a human rambling on pointlessly at great
- length; esp. in apology: "Sorry I dumped core on you". 4. A
- recapitulation of knowledge (compare <bits>, sense 1). Hence,
- spewing all one knows about a topic, esp. in a lecture or answer to
- an exam question. "Short, concise answers are better than core
- dumps" [From the instructions to a qual exam at Columbia]. See
- <core>.
-
- <core leak> n. Syn. with <memory leak>.
-
- <Core Wars> n. A game between `assembler' programs in a simulated
- machine, where the objective is to kill your opponent's program by
- overwriting it. This was popularized by A.K. Dewdney's column in
- `Scientific American' magazine, but is said to have been first
- devised by Victor Vyssotsky as a PDP-1 hack, during the early '60s
- at Bell Labs. It is rumored that the game is a civilized version
- of an amusement called DARWIN common on pre-MMU multitasking
- machines. See <core>.
-
- <corge> /korj/ [originally, the name of a cat] n. Yet another
- meta-syntactic variable, invented by Mike Gallaher and propagated
- by the Gosmacs documentation. See <grault>.
-
- <cosmic rays> n. Notionally, the cause of <bit rot>. However, this is
- a semi-independent usage which may be invoked as a humorous way to
- <handwave> away any minor <randomness> that doesn't seem worth the
- bother of investigating. "Hey, Eric --- I just got a burst of
- garbage on my <tube>, where did that come from?" "Cosmic rays, I
- guess". Compare <sunspots>, <phase of the moon>. The British seem
- to prefer the usage "cosmic showers"; "alpha particles" is also
- heard, because stray alpha particles passing through a memory chip
- can cause single bit errors (this becomes increasingly more likely
- as memory sizes and densities increase).
-
- <cowboy> [Sun, from William Gibson's cyberpunk SF] n. Synonym for
- <hacker>. It is reported that at Sun, this is often said with
- reverence.
-
- <CP/M> (see-pee-em) [Control Program for Microcomputers] An early
- microcomputer <OS> written by hacker Gary Kildall for 8080 and Z-80
- based machines, very popular in the late 1970s until virtually
- wiped out by MS-DOS after the release of the IBM PC in 1981 (legend
- has it that Kildall's company blew their chance to write the PC's
- OS because Kildall decided to spend the day IBM's reps wanted to
- meet with him enjoying the perfect flying weather in his private
- plane). Many of its features and conventions strongly resemble
- those of early DEC operating systems such as OS-8, RSTS and RSX-11.
- See <MS-DOS>, <operating system>.
-
- <CPU Wars> n. A 1979 large-format comic by Chas Andres chronicling the
- attempts of the brainwashed androids of `IPM' (Impossible to
- Program Machines) to conquer and destroy the peaceful denizens of
- HEC (Human Engineered Computers). This rather transparent allegory
- featured many references to <ADVENT> and the immortal line "Eat
- flaming death, minicomputer mongrels!" (uttered, of course, by an
- IPM stormtrooper). It is alleged that the author subsequently
- received a letter of appreciation on IBM company stationery from
- the then-head of IBM's Thomas J. Watson research laboratories (then
- as now one of the few islands of true hackerdom in the IBM
- archipelago). The lower loop of the `B' in the IBM logo, it is
- said, had been carefully whited out. See <eat flaming death>.
-
- <cracker> n. One who breaks security on a system. Coined c.1985 by
- hackers in defense against journalistic misuse of <hacker> (q.v.,
- sense #7). There had been an earlier attempt to establish `worm'
- in this sense around 1981-1982 on USENET; this largely failed.
-
- <crank> [from automotive slang] vt. Verb used to describe the
- performance of a machine, especially sustained performance. "This
- box cranks about 6 MegaFLOPS, with a burst mode of twice that on
- vectorized operations."
-
- <crash> 1. n. A sudden, usually drastic failure. Most often said of
- the <system> (q.v., sense #1), sometimes of magnetic disk drives.
- "Three lusers lost their files in last night's disk crash." A
- disk crash which entails the read/write heads dropping onto the
- surface of the disks and scraping off the oxide may also be
- referred to as a "head crash", whereas the term "system crash"
- usually, though not always, implies that the operating system or
- other software was at fault. 2. vi. To fail suddenly. "Has the
- system just crashed?" Also used transitively to indicate the
- cause of the crash (usually a person or a program, or both).
- "Those idiots playing <SPACEWAR> crashed the system." 3.
- Sometimes said of people hitting the sack after a long <hacking
- run>; see <gronk> (sense #4).
-
- <crash and burn> vi.,n. A spectacular crash, in the mode of the
- conclusion of the car chase scene from Steve McQueen's
- `Bullitt'. Sun-3 monitors losing the flyback transformer and
- lightning strikes on VAX-11/780 backplanes are notable crash and
- burn generators. The construction "crash and burn machine" is
- reported for a computer used for alpha or <beta> testing, or
- reproducing bugs, only (not development). The implication is that
- it wouldn't be such a disaster if that machine crashed, since only
- the testers would be inconvenienced.
-
- <crawling horror> n. Ancient crufty hardware or software that forces
- beyond the control of the hackers at a site refuse to let die.
- Like <dusty deck> or <gonkulator>, but connotes that the thing
- described is not just an irritation but an active menace to health
- and sanity. "Mostly we code new stuff in C, but they pay us to
- maintain one big Fortran II application from nineteen-sixty-X
- that's a real crawling horror...". Compare <WOMBAT>.
-
- <cray> /kray/ n. 1. One of the line of supercomputers designed by Cray
- Research. The term is actually the lowercased last name of Seymour
- Cray, a noted computer architect and co-founder of the company.
- Numerous vivid legends surround him, some true and some admittedly
- invented by Cray Research brass to shape their corporate culture.
- 2. Any supercomputer at all.
-
- <cray instability> n. A shortcoming of a program or algorithm which
- only manifests itself when running a large problem on a powerful
- machine. Generally more subtle than bugs which can be detected in
- smaller problems running on a workstation or mini.
-
- <crayola> n. A super-mini or -micro computer that provides some
- reasonable percentage of supercomputer performance for an
- unreasonably low price. Might also be a <killer micro>.
-
- <crayon> n. Someone who works on Cray supercomputers. More
- specifically implies a programmer, probably of the CDC ilk,
- probably male, and almost certainly wearing a tie (irrespective of
- gender). Unicos systems types who have a Unix background tend not
- to be described as crayons.
-
- <creationism> n. The (false) belief that large, innovative designs
- can be completely specified in advance and then painlessly magicked
- out of the void by the normal efforts of a team of normally
- talented programmers. In fact, experience has shown repeatedly
- that good designs arise only from evolutionary, exploratory
- interaction between one (or at most a small handful) of
- exceptionally able designer(s) and an active user population ---
- and that the first try at a big new idea is always wrong.
- Unfortunately, because these truth doesn't fit the planning models
- beloved of <management> they are generally ignored.
-
- <creeping elegance> n. Describes a tendency for parts of a design to
- become <elegant> past the point of diminishing return. This often
- happens at the expense of the less interesting parts of the design,
- schedule, and other things deemed important in the <Real World>.
- See also <creeping featuritis>.
-
- <creeping featuritis> /kree'ping fee-ch@r-ie't@s/ n. 1. Describes a
- systematic tendency to load more <chrome> onto systems at the
- expense of whatever elegance they may have possessed when originally
- designed. See also <feeping creaturitis>. "You know, the main
- problem with <BSD UNIX> has always been creeping featuritis". At
- MIT, this tends to be called `creeping featur*ism*' (and
- likewise, `feeping creaturism'). (After all, -ism means
- `condition' whereas -itis usually means `inflammation of'...)
- 2. More generally, the tendency for anything complicated to become
- even more complicated because people keep saying, "Gee, it would
- be even better if it had this feature too." (See <feature>.) The
- result is usually a patchwork because it grew one ad-hoc step at a
- time, rather than being planned. Planning is a lot of work, but
- it's easy to add just one extra little feature to help someone...
- and then another... and another.... When creeping featurism gets
- out of hand it's like a cancer. Usually this term is used to
- describe computer programs, but it could also be said of the
- federal government, the IRS 1040 form, and new cars. See also
- <creeping elegance>.
-
- <cretin> /kre'tn/ or /kree'tn/ n. Congenital <loser>; an obnoxious
- person; someone who can't do anything right. It has been observed
- that American hackers tend to favor the British pronunciation
- /kre'tn/ over standard American /kree'tn/; it is thought this may
- be due to the insidious phonetic influence of Monty Python's Flying
- Circus.
-
- <cretinous> /kre't@n-uhs/ or /kree't@n-uhs/ adj. Wrong;
- non-functional; very poorly designed (Also used pejoratively of
- people). Synonyms: <bletcherous>, <bagbiter>, <losing>,
- <brain-damaged>.
-
- <crippleware> n. 1. <shareware> which has some important functionality
- deliberately removed, so as to entice potential users to pay for a
- working version. See also <guiltware>. 2. [Cambridge] <guiltware>
- which exhorts you to donate to some charity.
-
- <crlf> /ker'l@f/, sometimes /kru'l@f/ n. A carriage return (CR)
- followed by a line feed (LF). More loosely, whatever it takes to
- get you from the end of one line of text to the beginning of the
- next line. See <newline>, <terpri>. Under <UNIX> influence this
- usage has become less common (UNIX uses a bare line feed as its
- `CRLF').
-
- <crock> [from the obvious mainstream scatologism] n. 1. An awkward
- feature or programming technique that ought to be made cleaner.
- Example: Using small integers to represent error codes without the
- program interpreting them to the user (as in, for example, UNIX
- `make(1)') is a crock. 2. Also, a technique that works acceptably
- but which is quite prone to failure if disturbed in the least, for
- example depending on the machine opcodes having particular bit
- patterns so that you can use instructions as data words too; a
- tightly woven, almost completely unmodifiable structure. See
- <kluge>. Also in the adjectives "crockish", "crocky" and the
- noun "crockitude".
-
- <cross-post> [USENET] vi. To post a single article directed to several
- newsgroups. Distinguished from posting the article repeatedly,
- once to each newsgroup, which causes people to see it multiple
- times. Cross-posting is frowned upon, as it tends to cause
- <followup> articles to go to inappropriate newsgroups, as people
- respond to only one part of the original posting (unless the
- originator is careful to specify a newsgroup for followups.)
-
- <crudware> /kruhd'weir/ n. Pejorative term for the hundreds of
- megabytes of low-quality <freeware> circulated by user's groups
- and BBS systems in the micro-hobbyist world. "Yet *another*
- set of disk catalog utilities for <MS-DOS>? What crudware!"
- The related usage "fuckware" is reported for software so bad it
- mutilates your disk, broadcasts to the Internet, or some similar
- fiasco.
-
- <cruft> /kruhft/ 1. [back-formation from <crufty>] n. 1. An unpleasant
- substance. The dust that gathers under your bed is cruft. 2. n.
- The results of shoddy construction. 3. vt. [from hand cruft, pun on
- hand craft] to write assembler code for something normally (and
- better) done by a compiler (see <hand-hacking>). 4. Excess;
- superfluous junk. Esp. used of redundant or superseded code.
-
- <cruft together> vt. (also "cruft up") To throw together
- something ugly but temporarily workable. Like vt. <kluge>, but
- more pejorative. "There isn't any program now to reverse all the
- lines of a file, but I can probably cruft one together in about ten
- minutes." See <crufty>.
-
- <cruftsmanship> /kruhfts'man-ship / n. [from <cruft>] The
- antithesis of craftsmanship.
-
- <crufty> /kruhf'tee/ [origin unknown; poss. from `crusty' or
- `cruddy'] adj. 1. Poorly built, possibly overly complex. The
- <canonical> example is "This is standard old crufty DEC
- software". In fact, one theory of the origin of `crufty' holds
- that was originally a mutation of `crusty' applied to DEC software
- so old that the Ss were tall and skinny, looking more like Fs. 2.
- Unpleasant, especially to the touch, often with encrusted junk.
- Like spilled coffee smeared with peanut butter and catsup. 3.
- Generally unpleasant. 4. (sometimes spelled "cruftie") n. A
- small crufty object (see <frob>); often one which doesn't fit
- well into the scheme of things. "A LISP property list is a good
- place to store crufties (or, random cruft)."
-
- <crumb> n. Two binary digits; a quad. Larger than a <bit>, smaller
- than a <nybble>. Syn. <tayste>.
-
- <crunch> 1. vi. To process, usually in a time-consuming or complicated
- way. Connotes an essentially trivial operation which is
- nonetheless painful to perform. The pain may be due to the
- triviality being imbedded in a loop from 1 to 1000000000.
- "FORTRAN programs do mostly number crunching." 2. vt. To reduce
- the size of a file by a complicated scheme that produces bit
- configurations completely unrelated to the original data, such as
- by a Huffman code. (The file ends up looking like a paper document
- would if somebody crunched the paper into a wad.) Since such
- compression usually takes more computations than simpler methods
- such as counting repeated characters (such as spaces) the term is
- doubly appropriate. (This meaning is usually used in the
- construction `file crunch(ing)' to distinguish it from `number
- crunch(ing)'.) See <compress>. 3. n. The character `#'.
- Usage: used at Xerox and CMU, among other places. See <ASCII>. 4.
- [Cambridge] To squeeze program source into a minimum-size
- representation that will still compile. The term came into being
- specifically for a famous program on the BBC micro which crunched
- BASIC source in order to make it run more quickly (it was a
- wholly-interpretive basic).
-
- <cruncha cruncha cruncha> /kruhn'ch@ kruhn'ch@ kruhn'ch@/ interj.
- An encouragement sometimes muttered to a machine bogged down in a
- serious <grovel>. Also describes a notional sound made by
- grovelling hardware. See <wugga wugga>, <grind> (sense #3).
-
- <cryppie> /krip'ee/ n. A cryptographer. One who hacks or implements
- cryptographic software or hardware.
-
- <CTSS> /see-tee-ess-ess/ n. Compatible Time-Sharing System. An early
- (1963) experiment in the design of interactive time-sharing
- operating systems. Cited here because it was ancestral to
- <Multics>, <UNIX>, and <ITS>. The name <ITS> ("Incompatible
- Time-sharing System") was a hack on CTSS.
-
- <CTY> /sit'ee/ or /see tee wie/ n. [MIT] The terminal physically
- associated with a computer's system <console>. The term is a
- contraction of `Console TTY', that is, `Console TeleTYpe'.
- This <ITS> and <TOPS-10>-associated term has become less common
- than formerly, as most UNIX hackers simply refer to the CTY as `the
- console'.
-
- <cube> n. A module in the open-plan offices used at many programming
- shops. "I've got the manuals in my cube".
-
- <cubing> [parallel with `tubing'] vi. 1. Hacking on an IPSC (Intel
- Personal SuperComputer) hypercube. "Louella's gone cubing
- *again*!!" 2. An indescribable form of self-torture (see
- sense #1).
-
- <cursor dipped in X> adj. There are a couple of metaphors in
- English of the form `pen dipped in X' (perhaps the most common
- values of X are `acid' and `bile'). These map over neatly to this
- hackish usage (the cursor being what moves, leaving letters behind,
- when one is composing on-line).
-
- <cuspy> /kuhs'pee/ [coined at WPI from the DEC acronym CUSP, for
- Commonly Used System Program, i.e., a utility program used by many
- people] adj. 1. (of a program) Well-written. 2. Functionally
- excellent. A program which performs well and interfaces well to
- users is cuspy. See <rude>. 3. [NYU] Said of an attractive
- woman, especially one regarded as available.
-
- <cut a tape> vi. To write a software or document distribution on
- magnetic tape for shipment. Has nothing to do with physically
- cutting the medium! Though this usage is quite widespread, one
- never speaks of analogously `cutting a disk' or anything else in
- this sense.
-
- <cybercrud> /sie'ber-kruhd/ [coined by Ted Nelson] n. Obfuscatory
- tech-talk. Verbiage with a high <MEGO> factor. The computer
- equivalent of bureaucratese.
-
- <cyberpunk> /sie'ber-puhnk/ [orig. by SF writer Bruce Bethke and/or
- editor Gardner Dozois] n.,adj. A subgenre of SF launched in 1982
- by William Gibson's epoch-making novel `Neuromancer' (though
- its roots go back through Vernor Vinge's `True Names' (See
- Appendix C) to John Brunner's 1975 Hugo winner, `The Shockwave
- Rider'). Gibson's near-total ignorance of computers and the
- present-day hacker culture enabled him to speculate about the role
- of computers and hackers in futures in ways hackers have since
- found both irritatingly naive and tremendously stimulating.
- Gibson's work was widely imitated, in particular by the short-lived
- but innovative `Max Headroom' TV series. See <cyberspace>,
- <ice>, <go flatline>.
-
- <cyberspace> /sie'ber-spays/ n. 1. Notional `information-space'
- loaded with visual cues and navigable with brain-computer
- interfaces called `cyberspace decks'; a characteristic prop of
- <cyberpunk> SF. At time of writing (1990) serious efforts to
- construct <virtual reality> interfaces modelled explicitly on
- <cyberspace> are already under way, using more conventional
- devices such as glove sensors and binocular TV headsets. Few
- hackers are prepared to outright deny the possibility of a
- cyberspace someday evolving out of the network (see <network,
- the>). 2. Occasionally, the notional location of the mind of a
- person in <hack mode>. Some hackers report experiencing strong
- eidetic imagery when in hack mode; interestingly, independent
- reports from multiple sources suggest that there are common
- features to the experience. In particular, the dominant colors of
- this kind of subjective `cyberspace' are often gray and silver, and the
- imagery often involves constellations of marching dots, elaborate
- shifting patterns of lines and angles, or moire patterns.
-
- <cycle> n. The basic unit of computation. What every hacker wants
- more of. One might think that single machine instructions would be
- the measure of computation, and indeed computers are often compared
- by how many instructions they can process per second, but some
- instructions take longer than others. Nearly all computers have an
- internal clock, though, and you can describe an instruction as
- taking so many "clock cycles". Frequently the computer can
- access its memory once on every clock cycle, and so one speaks also
- of "memory cycles". These are technical meanings of <cycle>.
- The slang meaning comes from the observation that there are only so
- many cycles per second, and when you are sharing a computer, the
- cycles get divided up among the users. The more cycles the
- computer spends working on your program rather than someone else's,
- the faster your program will run. That's why every hacker wants
- more cycles: so he can spend less time waiting for the computer to
- respond.
-
- <cycle crunch> n. The situation where the number of people trying to
- use the computer simultaneously has reached the point where no one
- can get enough cycles because they are spread too thin. Usually
- the only solution is to buy more computer. Happily, this has
- rapidly become easier in recent years, so much so that the very
- term <cycle crunch> now has a faintly archaic flavor (most hackers
- now use workstations or personal computers as opposed to
- traditional timesharing systems).
-
- <cycle drought> n. A scarcity of cycles. It may be due to a <cycle
- crunch>, but could also occur because part of the computer is
- temporarily not working, leaving fewer cycles to go around.
- Example: "The <high moby> is <down>, so we're running with only
- half the usual amount of memory. There will be a cycle drought
- until it's fixed."
-
- <cycle server> n. A powerful machine which exists primarily for
- running large batch jobs. Interactive tasks such as editing should
- be done on other machines on the network, such as workstations.
-
- {= D =}
-
- <daemon> /day'm@n/ or /dee'm@n/ [Disk And Execution MONitor] n. A
- program which is not invoked explicitly, but which lies dormant
- waiting for some condition(s) to occur. The idea is that the
- perpetrator of the condition need not be aware that a daemon is
- lurking (though often a program will commit an action only because
- it knows that it will implicitly invoke a daemon). For example,
- under <ITS> writing a file on the LPT spooler's directory would
- invoke the spooling daemon, which prints the file. The advantage
- is that programs which want (in this example) files printed need
- not compete for access to the LPT. They simply enter their
- implicit requests and let the daemon decide what to do with them.
- Daemons are usually spawned automatically by the system, and may
- either live forever or be regenerated at intervals. Usage:
- <daemon> and <demon> are often used interchangeably, but seem to
- have distinct connotations. The term <daemon> was introduced to
- computing by <CTSS> people (who pronounced it dee'mon) and used it to
- refer to what ITS called a <dragon>. The meaning and pronunciation
- have drifted, and we think this glossary reflects current usage.
- See also <demon>.
-
- <dangling pointer> n. A reference that doesn't actually lead
- anywhere (in C and some other languages, a pointer that doesn't
- actually point at anything valid). Used as slang in a
- generalization of its technical meaning; a local phone number for a
- person who's since moved to the other coast, for example.
-
- <DATAMATION> n. A magazine that many hackers assume all <suits> read.
- Used to question an unbelieved quote, as in "Did you read that in
- DATAMATION?".
-
- <day mode> n. See <phase> (of people).
-
- <dd> /dee-dee/ [from IBM <JCL>] vt. Equivalent to <cat> or
- <BLT>. A UNIX copy command with special options suitable for
- block-oriented devices. Often used in heavy-handed system abuse,
- as in "Let's dd the root partition onto a tape, then use the boot
- prom to load it back on to a new disk". The UNIX `dd(1)' was
- desugned with a weird, distinctly non-UNIXy keyword option syntax
- reminiscent of IBM System/360 JCL (which had a similar DD command);
- though the command filled a need, the design choice looks to have
- been somebody's joke. The slang usage is now very rare outside
- UNIX sites and now nearly obsolescent even there, as `dd(1)'
- has been <deprecated> for a long time (though it has no
- replacement). Replaced by <BLT> or simple English `copy'.
-
- <DDT> /dee-dee-tee/ n. 1. Generic term for a program that helps you
- to debug other programs by showing individual machine instructions
- in a readable symbolic form and letting the user change them. In
- this sense the term DDT is now slightly archaic, having been widely
- displaced by `debugger' 2. [ITS] Under MIT's fabled <ITS> operating
- system, its DDT was also used as the SHELL or top level command
- language used to execute other programs. 3. Any one of several
- specific DDTs (sense 1) supported on early DEC hardware. The DEC
- PDP-10 Reference Handbook (1969) contained a footnote on the first
- page of the documentation for DDT which illuminates the origin of
- the term:
-
- Historical footnote: DDT was developed at MIT for the PDP-1
- computer in 1961. At that time DDT stood for "DEC Debugging
- Tape". Since then, the idea of an on-line debugging program
- has propagated throughout the computer industry. DDT programs
- are now available for all DEC computers. Since media other
- than tape are now frequently used, the more descriptive name
- "Dynamic Debugging technique" has been adopted, retaining
- the DDT acronym. Confusion between DDT-10 and another well
- known pesticide, dichloro-diphenyl-trichloroethane
- (C14-H9-Cl5) should be minimal since each attacks a different,
- and apparently mutually exclusive, class of bugs.
-
- Sadly, this quotation was removed from later editions of the
- handbook as the <suit>s took over and DEC became much more
- `businesslike'.
-
- <dead code> n. Routines which can never be accessed because all
- calls to them have been removed, or code which cannot be reached
- because it is guarded by a control structure which provably must
- always transfer control somewhere else. The presence of dead code
- may reveal either logical errors due to alterations in the program
- or significant changes in the assumptions and environment of the
- program (see also <software rot>); a good compiler should detect
- flag dead code so a maintainer can think about what it means. Syn.
- <grunge>.
-
- <deadlock> n. 1. A situation wherein two or more processes are unable
- to proceed because each is waiting for another to do something. A
- common example is a program communicating to a server, which may
- find itself waiting for output from the server before sending
- anything more to it, while the server is similarly waiting for more
- input from the controlling program before outputting anything. (It
- is reported that this particular flavor of deadlock is sometimes
- called a "starvation deadlock", though that term is more properly
- used for situations where a program can never run simply because it
- never gets high enough priority. Another common flavor is
- "constipation", where each process is trying to send stuff to the
- other, but all buffers are full because nobody is reading
- anything.) See <deadly embrace>. 2. Also used of deadlock-like
- interactions between humans, as when two people meet in a narrow
- corridor, and each tries to be polite by moving aside to let the
- other pass, but they end up swaying from side to side without
- making any progress because they always both move the same way at
- the same time.
-
- <deadly embrace> n. Same as <deadlock>, though usually used only when
- exactly two processes are involved. This is the more popular term in
- Europe; <deadlock> in the United States. Also "deadly embrace"
- is often restricted to the case where exactly two processes are
- involved, while <deadlock> can involve any number.
-
- <death star> [from the movie `Star Wars'] The AT&T corporate logo,
- which appears on computers sold by AT&T and bears an uncanny
- resemblance to the `Death Star' in the movie. This usage is
- particularly common among partisans of <BSD> UNIX, who tend to
- regard the AT&T versions as inferior and AT&T as a bad guy.
-
- AT&T's internal magazine, `Focus', uses "death star" for
- an incorrectly done AT&T logo in which the inner circle in the top
- left is dark instead of light -- a frequent result of dark-on-light
- logo images.
-
- <DEC Wars> n. A 1983 <USENET> posting by Alan Hastings and Steve Tarr,
- spoofing the `Star Wars' movies in hackish terms. Some years
- later, ESR (disappointed by Hastings/Tarr's failure to exploit a
- great premise more thoroughly) posted a three-times-longer complete
- rewrite called `UNIX WARS'; the two are often confused.
-
- <deckle> [from dec- and <nickle>] /dek'l/ n. Two <nickle>s; 10
- bits. Reported among developers for Mattel's GI 1600 (the
- Intellivision games processor), a chip with 16-bit-wide RAM but
- 10-bit-wide ROM.
-
- <deep magic> [poss. fr. C.S. Lewis's `Narnia' books.] n. An
- awesomely arcane technique central to a program or system, esp. one
- not generally published and available to hackers at large (compare
- <black art>). one which could only have been uttered by a true
- <wizard>. Compiler optimization techniques and many aspects of
- <OS> design used to be <deep magic>; many techniques in
- cryptography, signal processing, graphics and AI still are.
- Compare <heavy wizardry>. Esp. found in comments of the form
- "Deep magic begins here...". Compare <voodoo programming>.
-
- <deep space> adj. 1. Describes the notional location of any program
- which has gone <off the trolley>. Esp. used of programs which
- just sit there silently grinding long after either failure or some
- output is expected. Compare <buzz>, <catatonia>,
- <hyperspace>. 2. The metaphorical location of a human so dazed
- and/or confused or caught up in some esoteric form of <bogosity>
- that he/she no longer responds coherently to normal communication.
- Compare <page out>.
-
- <defenestration> [from the traditional Czechoslovak method of
- assassinating prime ministers, via SF fandom] n. 1. Proper karmic
- retribution for an incorrigible punster. "Oh, ghod, that was
- *awful*!" "Quick! Defenestrate him!" See also <h infix>.
- 2. The act of exiting a window system in order to get better
- response time from a full-screen program. 3. [proposed] The
- requirement to support a command-line interface. As: "It has to
- run on a VT100." "Curses! I've been defenestrated".
-
- <defined as> adj. Currently in the role of, usually in an
- off-the-organization-chart sense. "Pete is currently defined as
- bug prioritizer".
-
- <dehose> vt. To clear a <hosed> condition.
-
- <delint> vt. To modify code to remove problems detected when linting.
- See <lint>.
-
- <demo> /de'moh/ [short for `demonstration'] 1. v. To demonstrate a
- product or prototype. A far more effective way of inducing bugs to
- manifest than any number of <test> runs, especially when
- important people are watching. 2. n. The act of demoing.
-
- <demo mode> [Sun] n. State of being <heads down> in order to finish
- code in time for a <demo>, usually due <RSN>.
-
- <delta> n. 1. A change, especially a small or incremental change.
- Example: "I just doubled the speed of my program!" "What was
- the delta on program size?" "About thirty percent." (He
- doubled the speed of his program, but increased its size by only
- thirty percent.) 2. [UNIX] A <DIFF>, especially a <DIFF> stored
- under the set of version-control tools called SCCS (Source Code
- Control System). 3. n. A small quantity, but not as small as
- <epsilon>. The slang usage of <delta> and <epsilon> stems from the
- traditional use of these letters in mathematics for very small
- numerical quantities, particularly in so-called `epsilon-delta'
- proofs in the differential calculus. <delta> is often used once
- <epsilon> has been mentioned to mean a quantity that is slightly
- bigger than <epsilon> but still very small. For example, "The
- cost isn't epsilon, but it's delta" means that the cost isn't
- totally negligible, but it is nevertheless very small. Compare
- <within delta of>, <within epsilon of>: that is, close to and even
- closer to.
-
- <demented> adj. Yet another term of disgust used to describe a
- program. The connotation in this case is that the program works as
- designed, but the design is bad. For example, a program that
- generates large numbers of meaningless error messages implying it
- is on the point of imminent collapse.
-
- <demigod> n. Hacker with years of experience, a national reputation,
- and a major role in the development of at least one design, tool or
- game used by or known to more than 50% of the hacker community. To
- qualify as a genuine demigod, the person must recognizably identify
- with the hacker community and have helped shape it. Major demigods
- include Ken Thompson and Dennis Ritchie (co-inventors of <UNIX> and
- C) and Richard M. Stallman (inventor of <EMACS>). In their hearts
- of hearts most hackers dream of someday becoming demigods
- themselves, and more than one major software project has been
- driven to completion by the author's veiled hopes of apotheosis.
- See also <net.god>, <true-hacker>.
-
- <demon> n. 1. [MIT] A portion of a program which is not invoked
- explicitly, but which lies dormant waiting for some condition(s) to
- occur. See <daemon>. The distinction is that demons are usually
- processes within a program, while daemons are usually programs
- running on an operating system. Demons are particularly common in
- AI programs. For example, a knowledge manipulation program might
- implement inference rules as demons. Whenever a new piece of
- knowledge was added, various demons would activate (which demons
- depends on the particular piece of data) and would create
- additional pieces of knowledge by applying their respective
- inference rules to the original piece. These new pieces could in
- turn activate more demons as the inferences filtered down through
- chains of logic. Meanwhile the main program could continue with
- whatever its primary task was. 2. [outside MIT] Often used
- equivalently to <daemon>, especially in the <UNIX> world where the
- latter spelling and pronunciation is considered mildly archaic.
-
- <depeditate> vt. Humourously, to cut off the feet of. When using
- some computer-aided phototypesetting tools, careless placement of
- text blocks within a page or above a rule can result in chopped-off
- letter descenders. Such letters are said to have been depeditated.
-
- <deprecated> n. Said of a program or feature that is considered
- obsolescent and in the process of being phased out, usually in
- favor of a specified replacement. Deprecated features can,
- unfortunately, linger on for many years.
-
- <de-rezz, derez> /dee-rez'/ [from the movie `Tron'] 1. vi. To
- disappear or dissolve; the image that goes with it is of an object
- breaking up into raster lines and static and then dissolving.
- Occasionally used of a person who seems to have suddenly
- "fuzzed out" mentally rather than physically. Usage: extremely
- silly, also rare. This verb was actually invented as
- *fictional* hacker slang, and adopted in a spirit of irony by
- real hackers years after the fact. 2. vt. On a Macintosh, the
- data is compiled separately from the program, in small segments of
- the program file known as "resources". The standard resource
- compiler is Rez. The standard resource decompiler is DeRez.
- Usage: very common.
-
- <desk check> n.,v. To grovel over hardcopy of source code mentally
- simulating the control flow; a method of catching bugs. No longer
- common practice in this age of on-screen editing and fast compiles,
- though some maintain stoutly that it ought to be.
-
- <devo> /dee'voh/ [orig. in-house slang at Symbolics] n. A person in a
- development group. See also <doco> and <mango>.
-
- <dickless workstation> n. Extremely pejorative hackerism for
- "diskless workstation", a class of botches including the Sun 3/50
- and other machines designed exclusively to network with an
- expensive central disk server. These combine all the disadvantages
- of time-sharing with all the disadvantages of distributed personal
- computers.
-
- <diddle> 1. vt. To work with in a not particularly serious manner.
- "I diddled a copy of <ADVENT> so it didn't double-space all the
- time." "Let's diddle this piece of code and see if the problem
- goes away." See <tweak> and <twiddle>. 2. n. The action or result
- of diddling. See also <tweak>, <twiddle>, <frob>.
-
- <diffs> n. 1. Differences, especially difference in source code or
- documents. Includes additions. "Send me your diffs for the jargon
- file!" 2. (often in the singular <diff>) the output from the
- `diff(1)' utility, esp. when used as specification input to
- the `patch(1)' utility (which can actually perform the
- modifications). This is a common method of distributing patches
- and source updates in the UNIX/C world.
-
- <digit> /dij'it/ n. An employee of Digital Equipment Corporation. See
- also <VAX>, <VMS>, <PDP-10>, <TOPS-10>, <field circus>.
-
- <dike> vt. To remove or disable a portion of something, as a wire from
- a computer or a subroutine from a program. A standard slogan runs:
- "When in doubt, dike it out." (The implication is that it is
- usually more effective to attack software problems by reducing
- complexity rather than increasing it). The word `dikes' is
- widely used among mechanics and engineers to mean `diagonal
- cutters', a heavy-duty metal-cutting device; to `dike something
- out' means to use such cutters to remove something. Among hackers
- this term has been metaphorically extended to non-physical objects
- such as sections of code.
-
- <ding> /ding/ n.,vi. 1. Synonym for <feep>. Usage: rare among
- hackers, but commoner in the <Real World>. 2. <dinged>: What
- happens when someone in authority gives you a minor bitching about
- something, esp. something you consider trivial. "I was dinged for
- having a messy desk".
-
- <dink> adj. Said of a machine which has the <bitty box> nature; a
- machine too small to be worth bothering with, sometimes the current
- system you're forced to work on. First heard from an MIT hacker
- (BADOB) working on a CP/M system with 64K in reference to any 6502
- system, then from people writing 32 bit software about 16 bit
- machines. "GNUmacs will never work on that dink machine."
- Probably derived from mainstream `dinky', which isn't
- sufficiently perjorative.
-
- <dinosaur> n. 1. Any hardware requiring raised flooring and special
- power. Used especially of old minis and mainframes when contrasted
- with newer microprocessor-based machines. In a famous quote from
- the '88 UNIX EXPO, Bill Joy compared the mainframe in the massive
- IBM display with a grazing dinosaur, "with a truck outside pumping
- its bodily fluids through it". IBM was not amused. Compare
- <big iron>; see also <mainframe>. 2. [IBM] A very
- conservative user; a <zipperhead>.
-
- <dinosaur pen> n. A traditional <mainframe> computer room complete with
- raised flooring, special power, its own ultra-heavy-duty air
- conditioning, and a side order of Halon fire extinguishers. See
- <boa>.
-
- <dinosaurs mating> n. Said to occur when yet another <big iron>
- merger or buyout occurs; reflects a perception by hackers that
- these signal another stage in the long-drawn-out death throes of
- the <mainframe> industry. In its glory days of the Sixties, it
- was `IBM and the Seven Dwarves': Burroughs, Control Data, General
- Electric, Honeywell, NCR, RCA and Univac. RCA and GE sold out
- early and it was `IBM and the Bunch' (Burroughs, Univac, NCR,
- Control Data, and Honeywell) for a while. Honeywell was bought out
- by Bull; Burroughs merged with Univac (in 1984, this was when the
- phrase `dinosaurs mating' was coined), and at time of writing AT&T
- is attempting to recover from a disasterously bad first six years
- in the hardware industry by buying NCR. More such earth-shaking
- unions of doomed giants seem inevitable.
-
- <dirty power> n. Electrical mains voltage which is unfriendly to
- the delicate innards of computers. <Drop-outs>, spikes, average
- voltage significantly higher or lower than nominal or plain noise
- can all cause problems of varying subtlety and severity.
-
- <Discordianism> /dis-kor'di-@n-ism/ n. The veneration of <Eris>, aka
- Discordia; widely popular among hackers. Popularized by Robert
- Anton Wilson's `Illuminatus!' trilogy as a sort of self-subverting
- dada-Zen for Westerners --- it should on no account be taken
- seriously but is far more serious than most jokes. Usually
- connected with an elaborate conspiracy theory/joke involving
- millenia-long warfare between the anarcho-surrealist partisans of
- Eris and a malevolent, authoritarian secret society called the
- Illuminati. See Appendix B, <Church of the Sub-Genius>, and <ha ha
- only serious>.
-
- <display hack> n. A program with the same approximate purpose as a
- kaleidoscope: to make pretty pictures. Famous display hacks
- include <munching squares>, <smoking clover>, the BSD UNIX `rain(6)'
- program, `worms(6)' on miscellaneous UNIXes, and the <X> kaleid
- program. Display hacks can also be implemented without programming
- by creating text files containing numerous escape sequences for
- interpretation by a video terminal; one notable example displayed,
- on any VT100, a Christmas tree with twinkling lights and a toy
- train circling its base. Syn. <psychedelicware>.
-
- <disk farm> n. (also <laundromat>) A large room or rooms filled
- with disk drives (esp. <washing machines>).
-
- <distribution> n. 1. A software source tree packaged for
- distribution; but see <kit>. 2. A vague term encompassing
- mailing lists and USENET newsgroups; any topic-oriented message
- channel with multiple recipients.
-
- <do protocol> [from network protocol programming] vt. To perform an
- interaction with somebody or something that follows a clearly
- defined procedure. For example, "Let's do protocol with the
- check" at a restaurant means to ask for the check, calculate the
- tip and everybody's share, collect money from everybody, generate
- change as necessary, and pay the bill.
-
- <doco> /do'koh/ [orig. in-house slang at Symbolics] n. A documentation
- writer. See also <devo> and <mango>.
-
- <documentation> n. The multiple kilograms of macerated, pounded,
- steamed, bleached, and pressed trees that accompanies any modern
- software or hardware product (see also <tree-killer>). Hackers
- seldom read paper documentation and (too often) resist writing it;
- they prefer theirs to be terse and on-line. See <drool-proof
- paper>.
-
- <dodgy> adj. Syn. with <flaky>. Preferred outside the U.S.
-
- <dogcow> n. See <moof>.
-
- <dogwash> [From a quip in the `urgency' field of a very optional
- software change request, about 1982. It was something like,
- "Urgency: Wash your dog first."] n. A project of minimal
- priority, undertaken as an escape from more serious work. Also, to
- engage in such a project. Many games and much <freeware> gets
- written this way.
-
- <domainist> adj. 1. Said of an <Internet address> (as opposed to a
- <bang path>) because of the part to the right of the `@',
- which specifies a nested series of "domains"; for example,
- "eric@snark.thyrsus.com" specifies the machine called
- "snark" in the subdomain called <thyrsus> within the
- top-level domain called "com". 2. Said of a mailer or routing
- program which knows how to handle domainist addresses. 3. Said of
- a site which runs a domainist mailer.
-
- Reading domain addresses is something of an art. Here are the
- five most important top-level functional domains followed by a
- selection of geographical domains:
-
- `com'
- Machines at commercial organizations.
- `edu'
- Machines at educational instututions.
- `gov'
- U.S. Government civilian sites.
- `mil'
- U.S. military sites.
- `us'
- Sites in the U.S. not within one of the functional domains
- `su'
- Sites in the Soviet Union (only one really active one so far!)
- `uk'
- Sites in the United Kingdom
-
- Within the `us' domain there are subdomains for the fifty
- states, generally with a name identical to the state postal code.
-
- <Don't do that, then!> [from an old doctor's office joke about a
- patient with a trivial complaint] interj. Stock response to a user
- complaint. "When I type control-S, the whole system comes to a
- halt for thirty seconds." "Don't do that, then." Compare
- <RTFM>.
-
- <dongle> /dong'gl/ n. 1. A security device for commercial
- microcomputer programs consisting of a serialized EPROM and some
- drivers in a D-25 connector shell. Programs that use a dongle
- query the port at startup and programmed intervals thereafter, and
- terminate if it does not respond with the dongle's programmed
- validation code. Thus, users could make as many copies of the
- program as they want but must pay for each dongle. The idea was
- clever but initially a failure, as users disliked tying up a serial
- port this way. Most dongles on the market today (1990) will pass
- data through the port, and monitor for `magic codes' (and
- combinations of status lines) with minimal if any interference with
- devices further down the line (this innovation was necessary to
- allow daisy-chained dongles for multiple pieces of software). The
- devices are still not widely used, as the industry has trended away
- from copy-protection schemes in general. 2. By extension, any
- physical electronic key or transferrable ID required for a program
- to function. See <dongle-disk>.
-
- <dongle-disk> /don'gl disk/ n. See <dongle>; a `dongle-disk' is a
- floppy disk with some coding which allows an application to
- identify it uniquely. It can therefore be used as a <dongle>.
- Also called a "key disk".
-
- <donuts> n. Collective noun for any set of memory bits. This is
- really archaic and may no longer be live slang; it dates from the
- days of ferrite-core memories in which each bit was represented by
- a doughnut-shaped magnetic flip-flop. Compare <core>.
-
- <doorstop> n. Used to describe equipment that is non-functional and
- halfway expected to remain so, especially obsolescent equipment
- kept around for political reasons or ostensibly as a backup.
- "When we get another Wyse-50 in here that ADM3 will turn into a
- doorstop." Compare <boat anchor>.
-
- <dot file> [UNIX] n. A file that is not visible to normal
- directory-browsing tools (on UNIX, files named beginning with a dot
- are normally invisible to the directory lister).
-
- <double bucky> adj. Using both the CTRL and META keys. "The command
- to burn all LEDs is double bucky F." See also <meta bit>,
- <cokebottle>, <quadruple bucky>, <space-cadet keyboard>. The
- following lyrics were written on May 27, 1978, in celebration of
- the Stanford keyboard. A typical MIT comment was that the Stanford
- <bucky bits> (control and meta shifting keys) were nice, but there
- weren't enough of them; you could only type 512 different
- characters on a Stanford keyword. An obvious thing was simply to
- add more shifting keys, and this was eventually done; one problem,
- is that a keyboard with that many shifting keys is hard on
- touch-typists, who don't like to move their hands away from the
- home position on the keyboard. It was half-seriously suggested
- that the extra shifting keys be pedals; typing on such a keyboard
- would be very much like playing a full pipe organ. This idea is
- mentioned below, in a parody of a very fine song by Jeffrey Moss
- called `Rubber Duckie', which was published in `The Sesame
- Street Songbook'.
-
- Double Bucky
-
- Double bucky, you're the one!
- You make my keyboard lots of fun.
- Double bucky, an additional bit or two:
- (Vo-vo-de-o!)
- Control and meta, side by side,
- Augmented ASCII, nine bits wide!
- Double bucky! Half a thousand glyphs, plus a few!
- Oh,
- I sure wish that I
- Had a couple of
- Bits more!
- Perhaps a
- Set of pedals to
- Make the number of
- Bits four:
- Double double bucky!
- Double bucky, left and right
- OR'd together, outta sight!
- Double bucky, I'd like a whole word of
- Double bucky, I'm happy I heard of
- Double bucky, I'd like a whole word of you!
-
- --- The Great Quux (with apologies to Jeffrey Moss)
-
- [This is, by the way, an excellent example of computer <filk> --- ESR]
-
- <doubled sig> [USENET] n. A <sig block> that has been included
- twice in a <USENET> article or, less frequently, in an electronic
- mail message. An article or message with a doubled sig can be
- caused by improperly configured software. More often, however, it
- reveals the author's lack of experience in electronic
- communication. See <biff>, <pseudo>.
-
- <down> 1. adj. Not operating. "The up escalator is down." That is
- considered a humorous thing to say, but "The elevator is down"
- always means "The elevator isn't working" and never refers to
- what floor the elevator is on. With respect to computers, this
- usage has passed into the mainstream; the extension to other kinds
- of machine is still hackish. 2. "go down" vi. To stop functioning;
- usually said of the <system>. The message every hacker hates to
- hear from the operator is, "The system will go down in five
- minutes." 3. "take down", "bring down" vt. To deactivate
- purposely, usually for repair work. "I'm taking the system down to
- work on that bug in the tape drive."
-
- <DP> n. Data Processing. Listed here because according to hackers,
- use of it marks one immediately as a <suit>. See <DPer>.
-
- <DPB> /d@-pib'/ [from the PDP-10 instruction set] vt., obs. To plop
- something down in the middle. Usage: silly. Example: "Dpb
- yourself into that couch, there." The connotation would be that
- the couch is full except for one slot just big enough for you to
- sit in. DPB means `DePosit Byte', and was the name of a PDP-10
- instruction that inserts some bits into the middle of some other
- bits. This usage has been kept alive by the Common Lisp function
- of the same name.
-
- <DPer> n. Data Processor. Hackers are absolutely amazed that <suits>
- use this term self-referentially. "*Computers* process data,
- not people!" See <DP>.
-
- <dragon> n. [MIT] A program similar to a <daemon>, except
- that it is not invoked at all, but is instead used by the system to
- perform various secondary tasks. A typical example would be an
- accounting program, which keeps track of who is logged in,
- accumulates load-average statistics, etc. Under ITS, many
- terminals displayed a list of people logged in, where they are,
- what they're running, etc. along with some random picture (such as
- a unicorn, Snoopy, or the Enterprise) which was generated by the
- `name dragon'. Usage: rare outside MIT --- under UNIX and most
- other OSs this would be called a "background demon" or <daemon>.
- The best-known UNIX example of a dragon is `cron(1)'. At SAIL they
- called this sort of thing a "phantom".
-
- <Dragon Book> n. Aho, Sethi and Ullman's classic compilers text
- `Compilers: Principles, Techniques and Tools', so called
- because of the cover design depicting a knight slaying a dragon
- labelled `compiler complexity'. This actually describes the `Red
- Dragon Book'; an earlier edition (sans Sethi and titled
- `Principles Of Compiler Design') was the `Green Dragon Book'.
- See also <Blue Book>, <Red Book>, <Green Book>, <Silver
- Book>, <Purple Book>, <Orange Book>, <White Book>,
- <Pink-Shirt Book>, <Aluminum Book>.
-
- <drain> [IBM] v. Syn. for <flush> (sense #4).
-
- <dread high bit disease> n. A condition endemic to PRIME (formerly
- PR1ME) minicomputers which results in all the characters having
- their high (0x80) bit ON rather than OFF. This of course makes
- transporting files to other systems much more difficult, not to
- mention talking to true eightbit devices. It is reported that
- PRIME adopted the reversed eight bit convention in order to save 25
- cents/serial line/machine. This probably qualifies as one of the
- most <cretinous> design tradeoffs ever made. See <meta bit>.
-
- <DRECNET> /drek'net/ [fr. German & Yiddish `dreck'] n. Deliberate
- distortion of DECNET, a networking protocol used in the <VMS>
- community. So-called because DEC helped write the Ethernet
- specification, and then (either stupidly or as a malignant
- customer-control tactic) violated that spec in the design of
- DRECNET in a way that made it incompatible. See also <connector
- conspiracy>.
-
- <driver> n. 1. The <main loop> of an interactive program; the
- code that gets commands and dispatches them for execution. 2. In
- "device driver", code designed to handle a particular
- peripheral device such as a magnetic disk or tape.
-
- <drool-proof paper> n. Documentation which has been obsessively dumbed
- down, to the point where only a <cretin> could bear to read it, is
- said to have succumbed to the `drool-proof paper syndrome' or to
- have been `written on drool-proof paper'. For example, this is
- an actual quote from Apple's LaserWriter manual: "Do not expose
- your LaserWriter to open fire or flame."
-
- <drop on the floor> vt. To react to an error condition by silently
- discarding messages or other valuable data. Example: "The gateway
- ran out of memory, so it just started dropping packets on the
- floor." Also frequently used of faulty mail and netnews relay
- sites that lose messages. See also <black hole>.
-
- <drop-ins> [prob. by anology with <drop-outs>] n. Spurious
- characters appearing on a terminal or console due to line noise or
- a system malfunction of some sort. Esp. used when these are
- interspered with your own typed input. Compare <drop-outs>.
-
- <drop-outs> n. 1. A variety of "power glitch" (see <glitch>);
- momentary zero voltage on the electrical mains. 2. Missing
- characters in typed input due to software malfunction or system
- saturation (this can happen under UNIX, for example, when a bad
- connect to a modem swamps the processor with spurious character
- interrupts). 3. Mental glitches; used as a way of describing
- those occasions when the mind just seems to shut down for a couple
- of beats. See <glitch>, <fried>.
-
- <drugged> adj., also "on drugs". 1. Conspicuously stupid, heading
- towards <brain-damaged>. Often accompanied by a pantomime of
- toking a joint. 2. Of hardware, very slow relative to normal
- performance.
-
- <drunk mouse syndrome> n. A malady exhibited by the mouse pointing
- device of some workstations. The typical symptom is for the mouse
- cursor on the screen to move to random directions and not in sync
- with the moving of the actual mouse. Can usually be corrected by
- unplugging the mouse and plugging it back again. Another
- recommended fix is to rotate your optical mouse pad 90 degrees.
-
- <dumbass attack> /duhm'ass @-tak'/ [Purdue] n. A novice's mistake
- made by the experienced, especially one made by running as root
- under UNIX, e.g. typing `rm -r *' or `mkfs' on a mounted
- file system. Compare <adger>.
-
- <dump> n. An undigested and voluminous mass of information about a
- problem or the state of a system, especially one routed to the
- slowest available output device (compare <core dump>), and most
- especially one consisting or hex and octal <runes> describing the
- byte-by-byte state of memory, mass storage or some file. In elder
- days, debugging was generally done by "grovelling over a dump"
- (see <grovel>); increasing use of high-level languages and
- interactive debuggers has made this uncommon, and the term `dump'
- now has a faintly archaic flavor.
-
- <double DECkers> n. Married couples both working for Digital
- Equipment Corporation.
-
- <dup loop> /doop loop/ (also <dupe loop>) [Fidonet] n. an incorrectly
- configured system or network gateway may propagate duplicate
- messages on one or more <echo>s, with different identification
- information which renders <dup killers> ineffective. If such
- a duplicate message passes eventually reaches a system which
- it had already passed through (with the original identification
- information), all systems passed on the way back to that
- system are said to be involved in a <dup loop>.
-
- <dup killer> /doop killer/ [Fidonet] n. Software which is supposed to
- detect and delete duplicates of a message which may have reached
- the Fidonet system via different routes.
-
- <dusty deck> n. Old software (especially applications) with which one
- is obliged to remain compatible. The term implies that the
- software in question is a holdover from card-punch days. Used esp.
- when referring to old scientific and number-crunching software,
- much of which was written in FORTRAN and very poorly documented but
- would be too expensive to replace. See <fossil>.
-
- <DWIM> /dwim/ [Do What I Mean] 1. adj. Able to guess, sometimes even
- correctly, what result was intended when provided with bogus input.
- 2. n.,obs. The INTERLISP function that attempted to accomplish this
- feat by correcting many of the more common errors. See <hairy>.
- 3. Occasionally, an interjection hurled at a balky computer, esp.
- when one senses one might be tripping over legalisms.
-
- DWIM is often suggested in jest as a desired feature for a complex
- program; also, occasionally described as the single instruction the
- ideal computer would have. Back when proof of program correctness
- were in vogue, there were also jokes about "DWIMC": Do What I
- Mean, Correctly). A related term, more often seen as a verb, is
- DTRT (Do The Right Thing), see <Right Thing, The>.
-
- <dynner> /din'r/ 32 bits, by analogy with <nybble> and <byte>. Usage:
- rare and extremely silly. See also <playte>, <taste>, <crumb>.
-
- {= E =}
-
- <earthquake> [IBM] n. The ultimate real-world shock test for computer
- hardware. Hacker sources at IBM deny the rumor that the Bay Area
- quake of 1989 was initiated by the company to test QA at its
- California plants.
-
- <Easter egg> n. 1. A message hidden in the object code of a program as
- a joke, intended to be found by persons disassembling or browsing
- the code. 2. A message, graphic, or sound-effect emitted by a
- program (or, on a PC, the BIOS ROM) in response to some
- undocumented set of commands or keystrokes, intended as a joke or
- to display program credits. One well-known early Easter egg found
- in a couple of OSs caused them to respond to the command `make
- love' with `not war?'. Many personal computers (other than the IBM
- PC) have much more elaborate eggs hidden in ROM, including lists of
- the developers' names, political exhortations, snatches of music,
- and (in one case) graphics images of the entire development team.
-
- <Easter egging> [IBM] n. The act of replacing unrelated parts more or
- less at random in hopes that a malfunction will go away. Hackers
- consider this the normal operating mode of <field circus> techs and
- do not love them for it. Compare <shotgun debugging>.
-
- <eat flaming death> imp. A construction popularized among hackers by
- the infamous <DEC WARS> comic; supposed to derive from a famously
- turgid line in a WWII-era anti-Nazi propaganda comic in which X was
- "non-Aryan mongrels" or something of the sort. Used in
- humorously overblown expressions of hostility. "Eat flaming death,
- <EBCDIC> users!"
-
- <EBCDIC> /eb's'dik/ [Extended Binary Coded Decimal Interchange
- Code] n. An alleged character set used on IBM <dinosaur>s that
- exists in six mutually incompatible versions, all featuring such
- delights as non-contiguous letter sequences and the absence of
- several ASCII punctuation characters fairly important for modern
- computer languages (exactly which characters are absent vary
- according to which version of EBCDIC you're looking at). IBM
- created EBCDIC in the early nineteen-sixties as a customer-control
- tactic, spurning the already established ASCII standard. Today,
- IBM claims to be an open-systems company, but IBM's own description
- of the EBCDIC variants and how to convert between them is still
- internally classified top-secret, burn-before reading. Hackers
- blanch at the very *name* of EBCDIC and consider it a
- manifestation of purest <evil>. See also <fear and loathing>.
-
- <echo> [Fidonet] n. A topic group on <Fidonet>'s echomail system. Compare
- <newsgroup>.
-
- <eighty-column mind> [IBM] n. The sort said to be employed by
- persons for whom the transition from card to tape was traumatic
- (nobody has dared tell them about disks yet). It is said that
- these people, like (according to an old joke) the founder of IBM,
- will be buried `face down, 9-edge first' (the 9-edge is the bottom
- of the card). This is inscribed on IBM's 1422 and 1602 card
- readers, and referenced in a famous bit of doggerel called "The
- Last Bug", which ends:
-
- He died at the console
- Of hunger and thirst.
- Next day he was buried,
- Face down, 9-edge first.
-
- The eighty-column mind is thought by most hackers to dominate IBM's
- customer base, and its thinking. See <IBM>, <fear and
- loathing>, <card walloper>.
-
- <El Camino Bignum> /el' k@-mee'noh big'num/ n. El Camino Real. El
- Camino Real is the name of a street through the San Francisco
- peninsula that originally extended (and still appears in places)
- all the way down to Mexico City. Navigation on the San Francisco
- peninsula is usually done relative to El Camino Real, which is
- assumed to run north and south even though it doesn't really in
- many places (see <logical>). El Camino Real runs right past
- Stanford University, and so is familiar to hackers. The Spanish
- word `real' (which has two syllables (ray-ahl')) means `royal';
- El Camino Real is `the royal road'. Now the English word
- `real' is used in mathematics to describe numbers (and by analogy
- is misused in computer jargon to mean floating-point numbers). In
- the FORTRAN language, for example, a `real' quantity is a number
- typically precise to seven decimal places, and a `double
- precision' quantity is a larger floating-point number, precise to
- perhaps fourteen decimal places. When a hacker from MIT visited
- Stanford in 1976 or so, he remarked what a long road El Camino Real
- was. Making a pun on `real', he started calling it `El Camino
- Double Precision' --- but when the hacker was told that the road
- was hundreds of miles long, he renamed it `El Camino Bignum', and
- that name has stuck. (See <bignum>.)
-
- <elegant> [from mathematical usage] adj. Combining simplicity, power,
- and a certain ineffable grace of design. Higher praise than
- `clever', `winning' or even <cuspy>.
-
- <elephantine> adj. Used of programs or systems which are both
- conspicuous <hog>s (due perhaps to poor design founded on <brute
- force and ignorance>) and exceedingly <hairy> in source form. An
- elephantine program may be functional and even friendly, but (like
- the old joke about being in bed with an elephant) it's tough to
- have around all the same, esp. a bitch to maintain. In extreme
- cases, hackers have been known to make trumpeting sounds or perform
- expressive zoomorphic mime at the mention of the offending program.
- Usage: semi-humorous. Compare `has the elephant nature' and the
- somewhat more pejorative <monstrosity>. See also <second-system
- effect> and <baroque>.
-
- <EMACS> /ee'maks/ [from Editing MACroS] n. The ne plus ultra of
- hacker editors, a program editor with an entire LISP interpreter
- inside it. Originally written by Richard Stallman in <TECO> at
- the MIT-AI lab, but the most widely used versions now run under
- UNIX. It includes facilities to run compilation subprocesses and
- send and receive mail; many hackers spend up to 80% of their
- <tube time> inside it. Some versions running under window
- managers iconify as an overflowing kitchen sink, perhaps to suggest
- the one feature the editor doesn't include. Indeed, some hackers
- find EMACS too heavyweight and <baroque> for their taste, and expand
- the name as `Escape Meta Alt Control Shift' to spoof its heavy
- reliance on complex bucky-bitted keystrokes. Other spoof
- expansions include Eight Megabytes And Constantly Swapping,
- Eventually malloc()s All Computer Storage, and EMACS Makes A
- Computer Slow (see RECURSIVE ACRONYMS). See also <vi>.
-
- <email> /ee'mayl/ vt.,n. Electronic mail automatically passed
- through computer networks and/or via modems common-carrier lines.
- Contrast <snail-mail>, <paper-net>, <voice-net>. See
- <network address>.
-
- <emoticon> /ee-moh'ti-con/ n. An ASCII glyph used to indicate an
- emotional state in email or news. Hundreds have been proposed, but
- only a few are in common use. These include:
-
- :-) Smiley face (indicates laughter)
- :-( Frowney face (indicates sadness, anger or upset)
- ;-) Half-smiley (ha ha only serious)
- Also known as "semi-smiley" or "winkey face".
- :-/ Wry face
-
- It appears that the emoticon was invented by one Scott Fahlman on
- the CMU <bboard> systems around 1980. He later wrote "I wish I
- had saved the original post, or at least recorded the date for
- posterity, but I had no idea that I was starting something that
- would soon pollute all the world's communication channels".
-
- Of these, the first two are by far the most frequently encountered.
- Hyphenless forms of them are common on CompuServe, GEnie and BIX;
- see also <bixie>. On <USENET>, "smiley" is often used as a
- generic (synonym for emoticon) as well as specifically for the
- happy-face emoticon.
-
- Note for the <newbie>: overuse of the smiley is a mark of
- loserhood! More than one per paragraph is a fairly sure sign that
- you've gone over the line.
-
- <empire> n. Any of a family of military simulations derived from a
- game written by Peter Langston many years ago. There are 5 or 6
- multi-player variants of varying degrees of sophistication, and one
- single-player version implemented for both UNIX and VMS which is
- even available as MS-DOS freeware. All are notoriously addictive.
-
- <engine> n. 1. A piece of hardware that encapsulates some function
- but can't be used without some kind of <front end>. This
- generalization has a long history; Charles Babbage's 1844 design
- for a mechanical stored-program computer was to be called the
- `Analytical Engine'). Today we have, especially, "print
- engine": the guts of a laser printer. 2. An analogous piece of
- software; notionally, one that does a lot of noisy crunching such
- as a <database engine>.
-
- <English> n.,obs. The source code for a program, which may be in any
- language, as opposed to <binary>. The idea behind the term is
- that to a real hacker, a program written in his favorite
- programming language is as readable as English. Usage: obsolete,
- used mostly by old-time hackers, though recognizable in context.
-
- <enhancement> n. <Marketroid>-speak for a bug <fix>. This abuse
- of language is a popular and time-tested way to turn incompetence
- into increased revenue.
-
- <ENQ> /enkw/ [from the ASCII mnemonic for 0000101] 1. An on-line
- convention for querying someone's availability. After opening a
- <talk mode> connection to someone apparently in heavy hack mode,
- one might type "SYN SYN ENQ?" (the SYNs representing notional
- synchronization bytes) expecting a return of <ACK> or NAK depending
- on whether or not the person felt interruptible. See <ACK>;
- compare <ping>, <finger>, and the usage of "FOO?" listed under
- <talk mode>.
-
- <EOF> /ee-oh-ef/ [UNIX/C] n. End Of File. 1. Refers esp. to whatever
- pseudo-character value is returned by C's sequential input
- functions (and their equivalents in other environments) when the
- logical end of file has been reached (this was 0 under V6 UNIX, is
- -1 under V7 and all subsequent versions and all non-UNIX C library
- implementations). 2. Used by extension in non-computer contexts
- when a human is doing something that can be modelled as a
- sequential read and can't go further. "Yeah, I looked for a list
- of 360 mnemonics to post as a joke, but I hit <EOF> pretty fast,
- all the library had was a <JCL> manual."
-
- <EOL> /ee-oh-el/ [End Of Line] n. Syn. <newline> derived perhaps
- from the original CDC6600 Pascal. Now rare, but widely recognized
- and occasionally used because it's shorter. It's used in the
- example entry under <BNF>.
-
- <EOU> /ee-oh-yoo/ The mnemonic of a mythical ASCII control character
- (End Of User) that could make a Model 33 Teletype explode on
- receipt. This parodied the numerous obscure record-delimiter
- control characters left in ASCII from the days when it was more
- associated with wire-service teletypes than computers (e.g. FS, GS,
- RS, US, EM, SUB, ETX and esp. EOT). It is worth remembering that
- ASR-33s were big, noisy mechanical beasts with a lot of clattering
- parts; the notion that one might explode was nowhere near as
- ridiculous as it might seem to someone sitting in front of a <tube>
- or flatscreen today.
-
- <epoch, the> [UNIX] [perhaps from astronomical timekeeping] n. The
- time and date corresponding to zero in an operating system's clock
- and timestamp values. Under most UNIX versions, 00:00:00 GMT
- January 1, 1970. System time is measured in seconds or <tick>s
- past the epoch. See <tick>s, <wall time>. Note that weird
- problems may ensue when the clock wraps around (see <wrap
- around>), and that this is not a necessarily a rare event; on
- systems counting 10 <tick>s per second, a 32 bit count of ticks
- is only good for 6.8 years. The 1-per-second clock of UNIX is good
- until January 18, 2038, assuming word lengths don't increase by
- then.
-
- <epsilon> [see <delta> for etymology] 1. n. A small quantity of
- anything. "The cost is epsilon." 2. adj. Very small,
- negligible; less than marginal. "We can get this feature for
- epsilon cost." 3. <within epsilon of>: close enough to be
- indistinguishable for all practical purposes. this is even closer
- than being <within delta of>. Example: "That's not what I asked
- for, but it's within epsilon of what I wanted." Alternatively, it
- may mean not close enough, but very little is required to get it
- there: "My program is within epsilon of working." See
- <asymptotic>.
-
- <epsilon squared> n. A quantity even smaller than <epsilon>, as small
- in comparison to it as it is to something normal. If you buy a
- supercomputer for a million dollars, the cost of the
- thousand-dollar terminal to go with it is <epsilon>, and the cost
- of the ten-dollar cable to connect the two is <epsilon squared>.
-
- <era, the> Syn. <epoch>. The Webster's Unabridged makes these words
- almost synonymous, but `era' usually connotes a span of time
- rather than a point in time. The <epoch> usage is recommended.
-
- <Eric Conspiracy> n. Notional group of mustachioed hackers named Eric
- first pinpointed as a sinister conspiracy by an infamous
- talk.bizarre posting c. 1986; this was doubtless influenced by the
- numerous `Eric' jokes in the Monty Python oeuvre. There do indeed
- seem to be considerably more mustachioed Erics in hackerdom than
- the frequency of these three traits can account for unless they are
- correlated in some arcane way. Well known examples include Eric
- Allman of <BSD> fame, Erik Fair (coauthor of NNTP); your editor has
- heard from about fourteen others by email, and the organization
- line `Eric Conspiracy Secret Laboratories' now emanates regularly
- from more than one site.
-
- <Eris> /e'ris/ pn. The Greco-Roman goddess of Chaos, Discord,
- Confusion and Things You Know Not Of; aka Discordia. Not a very
- friendly deity in the Classical original, she was re-invented as a
- more benign personification of creative anarchy starting in 1959 by
- the adherents of <Discordianism> and has since been a semi-serious
- subject of veneration in several `fringe' cultures including
- hackerdom. See <Discordianism>, <Church of the Sub-Genius>.
-
- <erotics> /ee-ro'tiks/ n. Reported from Scandinavia as
- English-language university slang for electronics. Often used by
- hackers, maybe because of its exciting aspects.
-
- <essentials> n. Things necessary to maintain a productive and secure
- hacking environment. "A jug of wine, a loaf of bread, a
- 20-megahertz 80386 box with 8 meg of core and a 300-megabyte disk
- supporting full UNIX with source and X windows and EMACS and UUCP
- to a friendly Internet site, and thou."
-
- <evil> adj. As used by hackers, implies that some system, program,
- person or institution is sufficiently mal-designed as to be not
- worth the bother of dealing with. Unlike the adjectives in the
- <cretinous>/<losing>/<brain-damaged> series, `evil' does not
- imply incompetence or bad design, but rather a set of goals or
- design criteria fatally incompatible with the speaker's. This is
- more an esthetic and engineering judgement than a moral one in the
- mainstream sense. "We thought about adding a <Blue Glue> interface
- but decided it was too evil to deal with." "<TECO> is neat, but
- it can be pretty evil if you're prone to typos." Often pronounced
- with the first syllable lengthened, as /eeeevil/.
-
- <exa-> /ek's@/ pref. Multiplier, 10 ^ 18 or [proposed] 2 ^ 60. See
- <kilo->.
-
- <examining the entrails> n. The process of rooting through a core dump
- or hex image in the attempt to discover the bug that brought your
- program or system down. Compare <runes>, <incantation>, <black
- art>.
-
- <EXCH> /eks'ch@, eksch/ vt. To exchange two things, each for the
- other; to swap places. If you point to two people sitting down and
- say "Exch!", you are asking them to trade places. <EXCH>,
- meaning EXCHange, was originally the name of a PDP-10 instruction
- that exchanged the contents of a register and a memory location.
- Many newer hackers tend to be thinking instead of the PostScript
- exchange operator.
-
- <excl> /eks'kl/ n. Abbreviation for "exclamation point". See
- <bang>, <shriek>, <wow>.
-
- <EXE> /eks'ee/ An executable binary file. Some operating systems
- (notably MS-DOS, VMS, and TOPS-20/TWENEX) use the extension .EXE to
- mark such files. This usage is also occasionally found among UNIX
- programmers even though UNIX executables don't have any required
- extension (in fact, the term `extension' in this sense is not part
- of UNIX jargon).
-
- <exec> /eg-zek'/ [shortened from "executive" or "execute"]
- vt.,n. 1. [UNIX] Synonym for <chain>, derives from the
- `exec(2)' call. 2. (obs) The command interpreter for an
- <OS> (see <shell>); term esp. used on mainframes, and prob.
- derived from UNIVAC's archaic EXEC 2 and EXEC 8 operating systems.
- 3. At IBM, the equivalent of a <script> (sense #1).
-
- <exercise, left as an> [Technical reference books] Used to complete a
- proof when one doesn't mind a <handwave>, or to avoid one entirely.
- The complete phrase is: "The proof (or rest) is left as an
- exercise for the reader."
-
- <eyeball search> n. To look for something in a mass of code by hand,
- as opposed to using some sort of pattern matcher like <grep> or
- any other automated search tool. Confusingly, this may also be
- described as a search <by hand>.
-
- {= F =}
-
- <fab> /fab/ [from English fabricate] 1. To produce chips from a
- design that may have been created by someone at another company.
- <fabbing> chips based on the designs of others is the activity of
- a <silicon foundry>. 2. Also "fab line" the production
- system (lithographry, diffusion, etching, etc.) for chips at a chip
- manufacturer. Different "fab lines" are run with different
- process parameters, die sizes, or technologies, or simply to
- provide more manufacturing volume.
-
- <face time> n. Time spent interacting with somebody face-to-face (as
- opposed to via electronic links). "Oh, yeah, I spent some face
- time with him at the last Usenix."
-
- <fall over> [IBM] vi. Yet another synonym for <crash> or <lose>.
- `Fall over hard' equates to <crash and burn>.
-
- <fall through> vt. 1. To exit a loop by exhaustion, i.e. by having
- fulfilled its exit condition rather than via a break or exception
- condition that exits from the middle of it. This usage appears to
- be *really* old, as in dating from the '40s and '50s. It may
- no longer be live slang. 2. To fail a test that would have passed
- control to a subroutine or other distant portion of code. 2. In C,
- `fall-through' is said to occur when the flow of execution in a
- switch statement reaches a `case' label other than by jumping there
- from the switch header, passing a point where one would normally
- expect to find a `break'. A trivial example:
-
- switch (color)
- {
- case GREEN:
- do_green();
- break;
- case PINK:
- do_pink();
- /* FALL THROUGH */
- case RED:
- do_red();
- break;
- default:
- do_blue();
- break;
- }
-
- The effect of this code is to `do_green()' when color is `GREEN',
- `do_red()' when color is `RED', `do_blue()' on any other color than PINK,
- and (this is the important part) `do_pink()' and *then* `do_red()'
- when color is `PINK'. Fall-through is <considered harmful> by some;
- among those who use it, it is considered good practice to include a
- comment highlighting the fall through, at the point one would
- normally expect a break.
-
- <fandango on core> [UNIX/C hackers, from the Mexican dance] n. In C, a
- wild pointer that runs out of bounds causing a <core dump>, or
- corrupts the `malloc(3)' <arena> in such a way as to cause mysterious
- failures later on, is sometimes said to have `done a fandango on
- core'. On low-end personal machines without an MMU this can
- corrupt the OS itself, causing massive lossage. Other third-world
- dances such as the rhumba, cha-cha or watusi may be substituted.
- See <aliasing bug>, <precedence lossage>, <smash the stack>,
- <memory leak>, <overrun screw>, <core>.
-
- <FAQ list> /ef-ay-kyoo list/ [Usenix] n. Compendium of accumulated
- lore, posted periodically to high-volume newsgroups in an attempt
- to forestall Frequently Asked Questions. The jargon file itself
- serves as a good example of a collection of one kind of lore,
- although it is far too big for a regular posting. Several extant
- FAQ lists do (or should) make reference to the jargon file. "How
- do you pronounce `char'?" and "What's that funny name for the `#'
- character?" are, for example, both Frequently Asked Questions.
-
- <farming> [Adelaide University, Australia] n. What the heads of a
- Winchester are said to do when they plow little furrows in the
- magnetic media. Associated with a <crash>. Typically used as
- follows: "Oh no, the machine has just crashed, I hope the hard
- drive hasn't gone <farming> again."
-
- <fascist> adj. Said of a computer system with excessive or annoying
- security barriers, usage limits or access policies. The
- implication is that said policies are preventing hackers from
- getting interesting work done. The variant "fascistic" seems to
- have been preferred at MIT, poss. by analogy with "touristic"
- (see <tourist>).
-
- <faulty> adj. Non-functional; buggy. Same denotation as
- <bletcherous>, <losing>, q.v., but the connotation is much
- milder.
-
- <fd leak> /ef dee leek/ n. A kind of programming bug analogous to a
- <core leak>, in which a program fails to close file descriptors
- (`fd's) after file operations are completed, and thus eventually
- runs out. See <leak>.
-
- <fear and loathing> [from Hunter Thompson] n. State inspired by the
- prospect of dealing with certain real-world systems and standards
- which are totally <brain-damaged> but ubiquitous --- Intel 8086s,
- or COBOL, or <EBCDIC>, or any IBM machine except the Rios (aka
- the RS/6000). "Ack. They want PCs to be able to talk to the AI
- machine. Fear and loathing time!" See also IBM.
-
- <feature> n. 1. An intended property or behavior (as of a program).
- Whether it is good or not is immaterial. 2. A good property or
- behavior (as of a program). Whether it was intended or not is
- immaterial. 3. A surprising property or behavior; in particular,
- one that is purposely inconsistent because it works better that way
- -- such an inconsistency is therefore a <feature> and not a
- <bug>. This kind of feature is sometimes called a <miswart>;
- see that entry for a classic example. 4. A property or behavior
- that is gratuitous or unnecessary, though perhaps also impressive
- or cute. For example, one feature of the MACLISP language is the
- ability to print numbers as Roman numerals. See <bells and
- whistles>. 5. A property or behavior that was put in to help
- someone else but that happens to be in your way. 6. A <bug> that
- has been documented. To call something a feature sometimes means
- the author of the program did not consider the particular case, and
- the program responded in a way that was unexpected, but not
- strictly incorrect. A standard joke is that a <bug> can be
- turned into a <feature> simply by documenting it (then
- theoretically no one can complain about it because it's in the
- manual), or even by simply declaring it to be good. "That's not a
- bug, that's a feature!" See also <feetch feetch>, <creeping
- featuritis>, <wart>.
-
- <feature creature> n. One who loves to add features to designs or
- programs, perhaps at the expense of coherence, concision, or
- <taste>. See also <creeping featurism>.
-
- <feature shock> n. A user's confusion when confronted with a package that
- has too many features and poor introductory material. Originally a
- pun on Alvin Toffler's title `Future Shock'.
-
- <featurectomy> /fee`ch@r-ek'to-mee/ n. The act of removing a feature
- from a program. Featurectomies generally come in two varieties,
- the "righteous" and the "reluctant". Righteous featurectomies
- are performed because the remover believes the program would be
- more elegant without the feature, or there is already an equivalent
- and `better' way to achieve the same end. (This is not quite the
- same thing as removing a <misfeature>.) Reluctant featurectomies
- are performed to satisfy some external constraint such as code size
- or execution speed.
-
- <feep> /feep/ 1. n. The soft bell of a display terminal (except for a
- VT-52!); a beep (in fact, the microcomputer world seems to prefer
- <beep>). 2. vi. To cause the display to make a feep sound. TTY's
- do not have feeps; they have mechanical bells that ring. Alternate
- forms: <beep>, <bleep>, or just about anything suitably
- onomatopoeic. (Jeff Macnelly, in his comic strip `Shoe', uses
- the word `eep' for sounds made by computer terminals and video
- games; this is perhaps the closest written approximation yet.) The
- term <beedle> was sometimes heard at SAIL, where the terminal
- bleepers are not particularly `soft' (they sound more like the
- musical equivalent of a raspberry or Bronx cheer; for a close
- approximation, imagine the sound of a Star Trek communicator's beep
- lasting for five seconds.). The `feeper' on a VT-52 has been
- compared to the sound of a '52 Chevy stripping its gears. See also
- <ding>.
-
- <feeper> /fee'pr/ n. The device in a terminal or workstation (usually
- a loudspeaker of some kind) that makes the <feep> sound.
-
- <feeping creaturitis> /fee'ping kree`ch@r-ie'tis/ n. Deliberate
- spoonerization of <creeping featuritis>, meant to imply that the
- system or program in question has become a misshapen creature of
- hacks. This term isn't really well-defined, but it sounds so neat
- that most hackers have said or heard it. It is probably reinforced
- by an image of terminals prowling about in the dark making their
- customary noises.
-
- <feetch feetch> interj. If someone tells you about some new
- improvement to a program, you might respond, "Feetch, feetch!"
- The meaning of this depends critically on vocal inflection. With
- enthusiasm, it means something like, "Boy, that's great! What a
- great hack!" Grudgingly or with obvious doubt, it means "I don't
- know; it sounds like just one more unnecessary and complicated
- thing." With a tone of resignation, it means, "Well, I'd rather
- keep it simple, but I suppose it has to be done."
-
- <fence> n. One or `out-of-band' characters used to delimit a piece
- of data intended to be treated as a unit. The NUL character that
- terminates strings in C is a fence. Hex FF is probably the most
- common fence character after NUL.
-
- <fencepost error> n. 1. The discrete equivalent of a boundary
- condition. Often exhibited in programs by iterative loops. From
- the following problem: "If you build a fence 100 feet long with
- posts ten feet apart, how many posts do you need?" (Either 9 or
- 11 is a better answer than the obvious 10.) For example, suppose
- you have a long list or array of items, and want to process items m
- through n; how many items are there? The obvious answer is `n - m',
- but that is off by one; the right answer is `n - m + 1'. A program
- that used the `obvious' formula would have a fencepost error in
- it. See also <off-by-one error>, and note that not all off-by-one
- errors are fencepost errors. The game of Musical Chairs involves
- an off-by-one problem where N people try to sit in N-1 chairs, but
- it's not a fencepost error. Fencepost errors come from counting
- things rather than the spaces between them, or vice versa, or by
- neglecting to consider whether one should count one or both ends of
- a row. 2. Occasionally, an error induced by unexpectedly regular
- spacing of inputs, which can (for instance) screw up your hash
- table.
-
- <Fidonet> n. A world-wide hobbyist network of personal computers
- which exchange mail, discussion groups, and files. Originally
- consisting only of IBM PCs and compatibles, Fidonet now includes
- such diverse machines as Apple ][s, Ataris, Amigas, and Unix
- systems. Fidonet is a sizeable fraction of <USENET>'s size at
- some 8000 systems (late 1990), although it is much younger than
- USENET.
-
- <field circus> [a derogatory pun on `field service'] n. The field
- service organization of any hardware manufacturer, but especially
- DEC. There is an entire genre of jokes about DEC field circus
- engineers:
-
- Q: How can you recognize a DEC field circus engineer with a flat tire?
- A: He's changing each tire to see which one is flat.
-
- Q: How can you recognize a DEC field circus engineer who is out of
- gas?
- A: He's changing each tire to see which one is flat.
-
- <field servoid> [play on "android"] /fee'ld ser'voyd/ n.
- Representative of a Field Service organization (see <field
- circus>).
-
- <Fight-o-net> [Fidonet] n. Deliberate distortion of <Fidonet>,
- often applied after a flurry of <flamage> in a particular
- <echo>, especially the SYSOP echo or Fidonews (see <'Snooze>).
-
- <File Attach> [Fidonet] 1. n. A file sent along with a mail message
- from one BBS to another. 2. vt. Sending someone a file by using
- the File Attach option in the BBS mailer.
-
- <File Request> [Fidonet] 1. n. The <Fidonet> equivalent of
- <FTP>, in which one BBS system automatically dials another and
- <snarf>s one or more files. Files are often announced as being
- "available for <FReq>" in the same way that files are announced
- as being "available for/by <anonymous FTP>" on the
- <Internet>. 2. vt. The act of getting a copy of a file by using
- the File Request option of the BBS mailer.
-
- <filk> /filk/ [from SF fandom, where a typo for `folk' was adopted
- as a new word] n.,v. A "filk" is a popular or folk song with
- lyrics revised or completely new lyrics, intended for humorous
- effect when read and/or to be sung late at night at SF conventions.
- There is a flourishing subgenre of these called "computer filks",
- written by hackers and often containing technical humor of quite
- sophisticated nature. See <double bucky> for an example.
-
- <film at 11> [MIT, in parody of TV newscasters], interj. Used in
- conversation to announce ordinary events, with a sarcastic
- implication that these events are earth-shattering. "<ITS>
- crashes; film at 11." "Bug found in scheduler; film at 11."
-
- <filter> [orig. UNIX, now also in <MS-DOS>] n. A program which
- processes an input text stream into an output text stream in some
- well-defined way, and does no I/O to anywhere else except possibly
- on error conditions; one designed to be used as a stage in a
- <pipeline>.
-
- <fine> [WPI] adj. Good, but not good enough to be <cuspy>. The word
- `fine' is used elsewhere, of course, but without the implicit
- comparison to the higher level implied by <cuspy>.
-
- <finger> [SAIL's mutant TOPS-10, via BSD UNIX] 1. n. A program that
- displays a particular user or all users logged on the system or a
- remote system. Typically shows full name, last login time, idle
- time, terminal line and terminal location. May also display a
- "plan file" left by the user. 2. vt. To apply finger to a
- username. 3. vt. By extension, to check a human's current state by
- any means. "Foodp?" "T!" "OK, finger Lisa and see if she's
- idle". 4. Any picture (composed of ASCII characters) depicting
- `the finger'. Originally a humorous component of one's plan
- file to deter the curious fingerer (sense #2), it has entered the
- arsenal of some <flamer>s.
-
- <finger-pointing syndrome> n. All-too-frequent result of bugs, esp.
- in new or experimental configurations. The hardware vendor points
- a finger at the software. The software vendor points a finger
- at the hardware. All the poor users get is the finger.
-
- <firebottle> n. A large, primitive, power-hungry active electrical
- device, similar to an FET constructed out of glass, metal, and
- vacuum. Characterized by high cost, low density, low reliability,
- high-temperature operation, and high power dissipation. Sometimes
- mistakenly called a "tube" in the U.S. or a "valve" in England.
-
- <firefighting> n. The act of throwing lots of manpower and late
- nights at a project to get it out before deadline. See also
- <gang bang>, <Mongolian Hordes technique>; however,
- <firefighting> connotes that the effort is going into chasing
- bugs rather than adding features.
-
- <firewall machine> n. A dedicated gateway machine with special
- security precautions on it, used to service outside
- network/mail/news connections and/or accept remote logins for (read
- only) shared-file-system access via FTP. The idea is to protect a
- cluster of more loosely administered machines `hidden' behind it
- from crackers. The typical firewall is an inexpensive
- micro-based UNIX box kept clean of critical data, with a bunch of
- modems and public network ports on it but just one carefully
- watched connection back to the rest of the cluster. The special
- precautions may include threat monitoring, callback, and even a
- complete <iron box> keyable to particular incoming IDs or activity
- patterns. Syn. <flytrap>, <Venus flytrap>.
-
- <fireworks mode> n. The mode a machine is sometimes said to be in when
- it is performing a <crash and burn> operation.
-
- <firmware> n. Software installed into a computer-based piece of
- equipment on ROM. So-called because it's harder to change than
- software but easier than hardware.
-
- <fish> [Adelaide University, Australia] n. Another metasyntactic
- variable. See <foo>. Derived originally from the Monty Python
- skit in the middle of `The Meaning of Life', entitled `Find the
- fish'.
-
- <FISH queue> [acronym, by analogy with FIFO (First In, First Out)]
- n. First In, Still Here. A joking way of pointing out that
- processing of a particular sequence of events or requests has
- stopped dead. Also "FISH mode" and "FISHnet"; the latter
- may be applied to any network that is running really slowly or
- exhibiting extreme flakiness. Compare <belly up>.
-
- <fix> n.,v. What one does when a problem has been reported too many
- times to be ignored.
-
- <flag> n. A variable or quantity that can take on one of two values; a
- bit, particularly one that is used to indicate one of two outcomes
- or is used to control which of two things is to be done. Examples:
- "This flag controls whether to clear the screen before printing
- the message." "The program status word contains several flag
- bits." See also <bit>, <hidden flag>, <mode bit>.
-
- <flag day> n. A software change which is neither forward nor backward
- compatible, and which is costly to make and costly to revert.
- "Can we install that without causing a flag day for all users?"
- This term has nothing to do with the use of the word <flag> to mean
- a variable that has two values. It came into use when a massive
- change was made to the <Multics> timesharing system to convert from
- the old ASCII code to the new one; this was scheduled for Flag Day,
- June 14, 1966.
-
- <flaky> adj. (var sp. "flakey") Subject to frequent lossages. See
- <lossage>. This use is of course related to the common slang use
- of the word, to describe a person as eccentric or crazy. A system
- that is flaky is working, sort of, enough that you are tempted to
- try to use it, but it fails frequently enough that the odds in
- favor of finishing what you start are low. Commonwealth hackish
- prefers <dodgy>.
-
- <flamage> /flay'm@j/ n. High-noise, low-signal postings to <USENET>
- or other electronic fora. Often in the phrase "the usual
- flamage".
-
- <flame> 1. vi. To speak incessantly and/or rabidly on some relatively
- uninteresting subject or with a patently ridiculous attitude. When
- a discussion degenerates into useless controversy, one might tell
- the participants, "Now you're just flaming" or "Stop all that
- flamage!" to try to get them to cool down (so to speak). 2. To
- post an email message intended to insult and provoke. <FLAME ON>:
- vi. To continue to flame. See <rave>, <burble>. The punning
- reference to Marvel comics's Human Torch has been lost as recent
- usage completes the circle: "Flame on" now usually means
- "beginning of flame".
-
- A USENETter who was at WPI from 1972 to 1976 adds: I am 99% certain
- that the use of `flame' originated at WPI. Those who made a
- nuisance of themselves insisting that they needed to use a TTY for
- `real work' came to be known as `flaming asshole lusers'.
- Other, particularly annoying people became `flaming asshole
- ravers', which shortened to `flaming ravers', and ultimately
- `flamers'. I remember someone picking up on the Human Torch pun,
- but I don't think `flame on/off' was ever much used at WPI. See
- also <asbestos cork award>.
-
- The term may have been independent invented at several different
- places; it is also reported that `flaming' was in use to mean
- something like `interminably drawn-out semi-serious discussions'
- (late-night bull-sessions) at Carleton College during 1968-1971.
-
- <flame bait> n. A posting intended to trigger a <flame war>, or one
- which invites flames in reply.
-
- <flame war> n. Acrimonious dispute, especially when conducted on a
- public electronic forum such as <USENET>. Often merged to one
- word, <flamewar>.
-
- <flamer> n. One who habitually flames others. Said esp. of obnoxious
- <USENET> personalities.
-
- <flap> vt. 1. To unload a DECtape (so it goes flap, flap, flap...).
- Old hackers at MIT tell of the days when the disk was device 0 and
- microtapes were 1, 2,... and attempting to flap device 0 would
- instead start a motor banging inside a cabinet near the disk! 2.
- By extension, to unload any magnetic tape. See <microtape>,
- <macrotape>. Modern cartridge tapes no longer actually flap, but
- the usage has remained.
-
- <flat-ASCII> adj. Said of a text file wich contains only 7-bit ASCII
- characters and uses only ASCII-standard control characters (that
- is, has no embedded codes specific to a particular text formatter
- or markup language, and no <meta>-characters). Syn.
- <plain-ASCII>. The description <flat-file> is roughly
- synonymous.
-
- <flat-file> adj. A <flatten>ed representation of some database or
- tree or network structure, as a single file from which the
- structure could implicitly be rebuilt, esp. one in <flat-ASCII>
- form.
-
- <flatten> vt. To remove structural information, esp. to filter
- something with an implicit tree structure into a simple sequence of
- leaves. "This code flattens an expression with parentheses into
- an equivalent <canonical> form."
-
- <flavor> n. 1. Variety, type, kind. "DDT commands come in two
- flavors." "These lights come in two flavors, big red ones and
- small green ones." See <vanilla>. 2. The attribute that causes
- something to be <flavorful>. Usually used in the phrase "yields
- additional flavor." "This convention yields additional flavor by
- allowing one to print text either right-side-up or upside-down."
- See <vanilla>. This usage is almost certainly influenced by
- accepted terminology in particle physics, in which quarks (the
- constituents of e.g. protons) come in six flavors (up, down,
- strange, charm, top, bottom) and three colors (red, blue, green)
- --- however, its use at MIT almost certainly predated quark theory.
-
- <flavorful> adj. Aesthetically pleasing. See <random> and <losing>
- for antonyms. See also the entries for <taste> and <elegant>.
-
- <flippy> /flip'ee/ n. A single-side floppy disk altered for
- double-sided use by addition of a second write-notch, so called
- because it must be flipped over for the second side to be
- accessible. No longer common.
-
- <flowchart> n. An archaic form of visual control-flow specification
- employing arrows and `speech balloons' of various shapes. Hackers
- never use flowcharts, consider them extremely silly, and associate
- them with COBOL programmers and other lower forms of life. This is
- because (from a hacker's point of view) they are just as difficult
- to read as code, not as precise, and tend to fall out of sync with
- the code (so that they either obfuscate it rather than explaining
- it, or require extra maintainence effort that doesn't improve the
- code). See also <pdl>, sense #3.
-
- <flush> v. 1. To delete something, usually superfluous. "All that
- nonsense has been flushed." Standard ITS terminology for aborting
- an output operation (but note sense 4 below!); one speaks of the
- text that would have been printed, but was not, as having been
- flushed. Under ITS, if you asked to have a file printed on your
- terminal, it was printed a page at a time; at the end of each page,
- it asked whether you want to see more, and if you said no, it
- replied "FLUSHED". (It is speculated that this term arose from a
- vivid image of flushing unwanted characters by hosing down the
- internal output buffer, washing the characters away before they can
- be printed.) 2. To leave at the end of a day's work (as opposed to
- leaving for a meal). "I'm going to flush now." "Time to
- flush." 3. To exclude someone from an activity, or to ignore a
- person. 4. [UNIX/C] To force buffered I/O to disk, as with an
- `fflush(3)' call. This is *not* an abort as in sense 1 but a
- demand for early completion! UNIX hackers find the ITS usage
- confusing and vice versa.
-
- <flytrap> n. See <firewall machine>.
-
- <FOAF> [USENET] n. Written-only acronym for Friend Of A Friend. The
- source of an unverified, possibly untrue story. This was not
- originated by hackers (it is used in Jan Brunvand's books on urban
- folklore) but is much better recognized on USENET and elsewhere
- than in the mainstream.
-
- <FOD> v. [Abbreviation for `Finger of Death', originally a
- spell-name from fantasy gaming] To terminate with extreme prejudice
- and with no regard for other people. From <MUD>s where the
- wizards' command `FOD <player>' results in the immediate and
- total death of <player>, usually as punishment for obnoxious
- behaviour. This migrated to other circumstances, such as "I'm
- going to fod that process which is burning all the CPU". Compare
- <gun>.
-
- <fold case> v. See <smash case>. This term tends to be used more
- by people who don't "mind" that their tools smash case.
-
- <followup> n. On USENET, a <posting> generated in response to
- another posting (as opposed to a <reply>, which goes by email
- rather than being broadcast). Followups include the ID of the
- <parent message> in their headers; smart news-readers can use
- this information to present USENET news in `conversation' sequence
- rather than order-of-arrival. See <thread>.
-
- <foo> /foo/ 1. interj. Term of disgust. 2. Name used for temporary
- programs, or samples of three-letter names. Other similar words
- are <bar>, <baz> (Stanford corruption of <bar>), and rarely RAG.
- 3. Used very generally as a sample name for absolutely anything.
- 4. First on the standard list of metasyntactic variables used in
- syntax examples. See also: <bar>, <baz>, <qux>, <quux>, <QUUUX>,
- <corge>, <grault>, <garply>, <waldo>, <fred>, <plugh>, <xyzzy>.
- <moby foo>: See <moby>.
-
- <foo> is the <canonical> example of a `metasyntactic variable'; a
- name used in examples and understood to stand for whatever thing is
- under discussion, or any random member of a class of things under
- discussion. To avoid confusion, hackers never use `foo' or other
- words like it as permanent names for anything.
-
- The etymology of hackish `foo' is obscure. When used in
- connection with `bar' it is generally traced to the WWII-era army
- slang acronym FUBAR (Fucked Up Beyond All Recognition), later
- expurgated to <foobar> and then truncated.
-
- However, the use of the word `foo' itself has more complicated
- antecedents, including a long history in comic strips and cartoons.
- The old `Smokey Stover' comic strips by Bill Holman often
- included the word `FOO', in particular on license plates of cars;
- allegedly, `FOO' and `BAR' also occurred in Walt Kelly's
- `Pogo' strips. In a 1938 cartoon Daffy Duck holds up a sign
- saying "SILENCE IS FOO!". It is even possible that hacker usage
- actually springs from the title `FOO, Lampoons and Parody' of
- a comic book first issued 20 years later, in September 1958; the
- byline read `C. Crumb' but this may well have been a sort-of
- pseudonym for noted weird-comix artist Robert Crumb. The title FOO
- was featured in large letters on the front cover.
-
- Very probably hackish `foo' had no single origin and derives
- through all these channels from Yiddish `feh', or English
- `fooey!'.
-
- <foobar> n. Another common metasyntactic variable; see <foo>.
-
- <fool> n. As used by hackers, specifically describes a person who
- habitually reasons from obviously or demonstrably incorrect
- premises and cannot be persuaded to do otherwise by evidence; it is
- not generally used in its other senses, i.e. to describe a person
- with a native incapacity to reason correctly, or a clown. Indeed,
- in hackish experience many fools are capable of reasoning all too
- effectively in executing their errors. See also <cretin>, <loser>.
-
- <footprint> n. 1. The floor or desk area taken up by a piece of
- hardware. 2. [IBM] The audit trail (if any) left by a crashed
- program (often in plural, "footprints"). See also
- <toeprint>.
-
- <for the rest of us> [from the Mac slogan "The computer for the
- rest of us"] adj. Used to describe a <spiffy> product whose
- affordability shames other comparable products, or (more often)
- used sarcastically to describe <spiffy>, but very overpriced
- products.
-
- <foreground> [UNIX] adj.,vt. On a time-sharing system, a task
- executing in foreground is one able to accept input from and return
- output to the user; oppose <background>. Normally, there is only
- one foreground task per terminal (or terminal window); having
- multiple processes simultaneously reading the keyboard is a good
- way to <lose>. By extension, to "foreground a task" is to bring
- it to the top of one's <stack> for immediate processing, and in
- this sense hackers often use it for non-computer tasks.
-
- <forked> [UNIX] adj. Terminally slow, or dead. Originated when the
- system slowed to incredibly bad speeds due to a process recursively
- spawning copies of itself (using the Unix system call `fork(2)')
- and taking up all the process table entries.
-
- <fortune cookie> [UNIX] n. A random quote, item of trivia, joke or
- maxim printed to the user's tty at login time or (less commonly) at
- logout time. Items from this jargon file have often been used as
- fortune cookies.
-
- <fossil> n. 1. In software, a misfeature that becomes understandable
- only in historical context, as a remnant of times past retained so
- as not to break compatibility. Example: the retention of octal as
- default base for string escapes in C in spite of the better match
- of hexadecimal to modern byte-addressable architectures. See
- <dusty deck>. 2. More restrictively, a feature with past but no
- present utility. Example: the force-all-caps (LCASE) bits in the
- V7 and <BSD UNIX> tty driver, designed for use with monocase
- terminals. In a perversion of the usual backwards compatibility
- goal, this functionality has actually been expanded and renamed in
- some later <USG UNIX> releases as the IUCLC and OLCUC bits. 3.
- FOSSIL (Fido/Opus/Seadog Standard Interface Level) specification for
- serial-port access to replace the <brain-dead> routines in the IBM PC
- ROMs. Fossils are used by most MSDOS <BBS> software in lieu of
- programming the <bare metal> of the serial ports, as the ROM routines
- do not support interrupt-driven operation or setting speeds above
- 9600. Since the FOSSIL specification allows additional functionality
- to be hooked in, drivers which use the <hook> but do not provide
- serial-port access themselves are named with a modifier, as in `video
- fossil'.
-
- <fred> n. The personal name most frequently used as a metasyntactic
- variable (see <foo>). Allegedly popular because it's easy to type
- on a standard QWERTY keyboard. It is alternatively alleged to be
- an acronym for `Flipping Ridiculous Electronic Device' (other
- f-verbs may be substituted for "flipping")
-
- <frednet> n. Used to refer to some <random> and uncommon protocol
- encountered on a network. "We're implementing bridging in our
- router to solve the frednet problem."
-
- <freeware> n. Free software, often written by enthusiasts and usually
- distributed by electronic mail, local bulletin boards, <USENET>, or
- other electronic media. See <shareware>.
-
- <freeze> v. To lock an evolving software distribution or document
- against changes so it can be released with some hope of stability.
- Carries the strong implication that the item in question will
- `unfreeze' at some future date. "OK, fix that bug and we'll
- freeze for release."
-
- <FReq> [Fidonet] written-only abbreviation for <File Request>.
-
- <fried> adj. 1. Non-working due to hardware failure; burnt out.
- Especially used of hardware brought down by a "power glitch"
- (see <glitch>), <drop-outs>, a short, or other electrical
- event. (Sometimes this literally happens to electronic circuits!
- In particular, resistors can burn out and transformers can melt
- down, emitting terribly-smelling smoke. However, this term is also
- used metaphorically.) 2. Of people, exhausted. Said particularly
- of those who continue to work in such a state. Often used as an
- explanation or excuse. "Yeah, I know that fix destroyed the file
- system, but I was fried when I put it in."
-
- <frob> /frob/ 1. n. [MIT] The official Tech Model Railroad Club
- definition was `FROB = protruding arm or trunnion', and by
- metaphoric extension any somewhat small thing; an object that you
- can comfortably hold in one hand; something you can frob. See
- <frobnitz>. 2. vt. Abbreviated form of <frobnicate>. 3. [from the
- <MUD> world] To request <wizard> privileges on the `professional
- courtesy' grounds that one is a wizard elsewhere.
-
- <frobnicate> /frob'ni-kayt/ vt. [Poss. derived from <frobnitz>, and
- usually abbreviated to <frob>, but <frobnicate> is recognized
- as the official full form.] To manipulate or adjust, to tweak.
- One frquently frobs bits or other two-state devices. Thus:
- "Please frob the light switch." (That is, flip it), but also
- "Stop frobbing that clasp; you'll break it." One also sees the
- construction `to frob a frob'. See <tweak> and <twiddle>.
- Usage: <frob>, <twiddle>, and <tweak> sometimes connote
- points along a continuum. <frob> connotes aimless manipulation;
- <twiddle> connotes gross manipulation, often a coarse search for
- a proper setting; <tweak> connotes fine-tuning. If someone is
- turning a knob on an oscilloscope, then if he's carefully adjusting
- it he is probably tweaking it; if he is just turning it but looking
- at the screen he is probably twiddling it; but if he's just doing
- it because turning a knob is fun, he's frobbing it. The variant
- "frobnosticate" has been recently reported.
-
- <frobnitz> /frob'nits/, pl. <frobnitzem> (frob'nit-zm) n. An
- unspecified physical object, a widget. Also refers to electronic
- black boxes. This rare form is usually abbreviated to "frotz",
- or more commonly to <frob>. Also used are "frobnule" and
- "frobule". Starting perhaps in 1979, "frobozz"
- /fruh-bahz'/, plural "frobbotzim" /fruh-bot'z@m/ has also
- become very popular, largely due to its exposure as a name via
- <Zork>. These can also be applied to nonphysical objects, such
- as data structures.
-
- <frog> alt. "phrog" 1. interj. Term of disgust (we seem to have a lot
- of them). 2. Used as a name for just about anything. See <foo>.
- 3. n. Of things, a crock. Of people, somewhere inbetween a
- turkey and a toad. 4. <froggy>: adj. Similar to <bagbiting>, but
- milder. "This froggy program is taking forever to run!"
-
- <front end> n. 1. A subsidiary computer that doesn't do much. 2.
- What you're talking to when you have a conversation with someone
- who is making replies without paying attention. "Look at the
- dancing elephants!" "Uh-huh." "Do you know what I just said?"
- "Sorry, you were talking to the front end". 3. Software which
- provides an interface to another program `behind' it, which may not
- be as user-friendly. Probably from analogy with hardware
- front-ends (see sense #1) which interfaced with mainframes.
-
- <frotz> /frotz/ 1. n. See <frobnitz>. 2. <mumble frotz>: An
- interjection of very mild disgust.
-
- <frotzed> /frotzt/ adj. <down> due to hardware problems.
-
- <fry> 1. vi. To fail. Said especially of smoke-producing hardware
- failures. More generally, to become non-working. Usage: never
- said of software, only of hardware and humans. See <fried>, <magic
- smoke>. 2. vt. To cause to fail; to <roach>, <toast> or <hose> a
- piece of hardware (never used of software or humans).
-
- <FTP> /ef-tee-pee/, *not* /fit'ip/ 1. n. The File Transfer
- Protocol for transmitting files between systems on the Internet.
- 2. vt. To transfer a file using the File Transfer Protocol. 3.
- Sometimes used as a generic even for file transfers not using
- <FTP>. "Lemme get this copy of Wuthering Heights FTP'd from
- uunet."
-
- <fuck me harder> excl. Sometimes uttered in response to egregious
- misbehavior, esp. in software, and esp. of those which seem
- unfairly persistent (as though designed in by the imp of the
- perverse). Often theatrically elaborated: "Aiighhh! Fuck me with
- a piledriver and sixteen feet of curare-tipped wrought-iron fence
- *and no lubricants!*" The phrase is sometimes heard
- abbreviated FMH in polite company.
-
- <FUD> /fuhd/ n. Fear, Uncertainty and Doubt. Defined by Gene Amdahl
- after he left IBM to found his own company: "FUD is the fear,
- uncertainty and doubt that IBM sales people instill in the minds of
- potential customers who might be considering [Amdahl] products."
- The idea, of course, was to persuade them to go with safe IBM gear
- rather than with competitors' equipment. This was traditionally
- done by promising that Good Things would happen to people who stuck
- with IBM, but Dark Shadows loomed over the future of the
- competitors' equipment or software. See <IBM>.
-
- <FUD wars> /fuhd worz/ n. [from `Fear, Uncertainty and Doubt']
- Political posturing engaged in by hardware and software vendors
- ostensibly committed to standardization but actually willing to
- fragment the market to protect their own share. The OSF vs. UNIX
- International conflict, for example.
-
- <fudge> 1. vt. To perform in an incomplete but marginally acceptable
- way, particularly with respect to the writing of a program. "I
- didn't feel like going through that pain and suffering, so I fudged
- it." 2. n. The resulting code.
-
- <fudge factor> n. A value or parameter that is varied in an ad hoc way
- to produce the desired result. The terms "tolerance" and
- "slop" are also used, though these usually indicate a one-sided
- leeway, such as a buffer which is made larger than necessary
- because one isn't sure exactly how large it needs to be, and it is
- better to waste a little space than to lose completely for not
- having enough. A fudge factor, on the other hand, can often be
- tweaked in more than one direction. A good example is the <fuzz>
- typically needed in floating-point calculations: two numbers being
- compared for equality must be allowed to differ by a small amount;
- if that amount is too small, a computation may never terminate,
- while if it is too large, results will be needlessly inaccurate.
- Fudge factors are frequently adjusted incorrectly by programmers
- who don't fully understand their import. See also <coefficient
- of x>.
-
- <fuel up> vi. To eat or drink hurriedly in order to get back to
- hacking. "Food-p?" "Yeah, let's fuel up." "Time for a
- <great-wall>!". See also ORIENTAL FOOD.
-
- <fuggly> /fuhg'lee/ adj. Emphatic form of <funky>; funky + ugly (or
- possibly a contraction of "fuckin' ugly"). Unusually for hacker
- slang, this may actually derive from black street-jive. To say it
- properly, the first syllable should be growled rather than spoken.
- Usage: humorous. "Man, the ASCII-to-<EBCDIC> code in that printer
- driver is *fuggly*." See also <wonky>.
-
- <funky> adj. Said of something which functions, but in a slightly
- strange, klugey way. It does the job and would be difficult to
- change, so its obvious non-optimality is left alone. Often used to
- describe interfaces. The more bugs something has that nobody has
- bothered to fix because workarounds are easier, the funkier it is.
- <TECO> and UUCP are funky. The Intel i860's exception handling is
- extraordinarily funky. Most standards acquire funkiness as they
- age. "The new mailer is installed, but is still somewhat funky;
- if it bounces your mail for no reason, try resubmitting it."
- "This UART is pretty funky. The data ready line is active-high in
- interrupt mode, and active-low in DMA mode." See <fuggly>.
-
- <funny money> n. 1. Notional `dollar' units of computing time and/or
- storage handed to students at the beginning of a computer course by
- professors; also called "play money" or "purple money" (in
- implicit opposition to real or "green" money). When your funny
- money ran out, your account froze and you needed to go to a
- professor to get more. Formerly a common practice, this has now
- been made sufficiently rare by the plunging cost of timesharing
- cycles that it has become folklore. The amounts allocated were
- almost invariably too small, even for the non-hackers who wanted to
- slide by with minimum work. In extreme cases the practice led to
- small-scale black markets in bootlegged computer accounts. 2. By
- extension, phantom money or quantity tickets of any kind used as a
- resource-allocation hack within a system.
-
- <fuzz> n. In floating-point arithmetic, the maximum difference allowed
- between two quantities for them to compare equal. Has to be set
- properly relative to the FPU's precision limits. See <fudge
- factor>.
-
- <fuzzball> [TCP/IP hackers] n. A DEC LSI-11 running a particular suite
- of homebrewed software by Dave Mills and assorted co-conspirators,
- used in the early 80's for Internet protocol testbedding and
- experimentation. These were used as NSFnet backbone sites in its
- early 56KB-line days; a few of these are still active on the
- Internet as of early 1990, doing odd jobs such as network time
- service.
-
- {= G =}
-
- <gabriel> /gay'bree-@l/ [for Dick Gabriel, SAIL volleyball fanatic]
- n. An unnecessary (in the opinion of the opponent) stalling
- tactic, e.g., tying one's shoelaces or hair repeatedly, asking the
- time, etc. Also used to refer to the perpetrator of such tactics.
- Also, "pulling a Gabriel", "Gabriel mode".
-
- <gag> vi. Equivalent to <choke>, but connotes more disgust. "Hey,
- this is Fortran code. No wonder the C compiler gagged." See also
- <barf>.
-
- <gang bang> n. The use of large numbers of loosely-coupled
- programmers in an attempt to wedge a great many features into a
- product in a short time. While there have been memorable gang
- bangs (e.g. that over-the-weekend assembler port mentioned in
- Steven Levy's `Hackers'), most are perpetrated by large
- companies trying to meet deadlines and produce enormous buggy
- masses of code entirely lacking in orthogonality (see
- <orthogonal>). When market-driven managers make a list of all
- the features the competition have and assign one programmer to
- implement each, they often miss the importance of maintaining
- strong invariants, like relational integrity. See also
- <firefighting>, <Mongolian Hordes technique>.
-
- <garbage collect> vi., (also "garbage collection", n.) See <GC>.
-
- <garply> /gar'plee/ n. [Stanford] Another meta-syntactic variable (see
- <foo>) popular among SAIL hackers.
-
- <gas> [as in "gas chamber"] interj. 1. A term of disgust and hatred,
- implying that gas should be dispensed in generous quantities,
- thereby exterminating the source of irritation. "Some loser just
- reloaded the system for no reason! Gas!" 2. A term suggesting
- that someone or something ought to be flushed out of mercy. "The
- system's wedging every few minutes. Gas!" 3. vt. <flush>.
- "You should gas that old crufty software." 4. GASEOUS adj.
- Deserving of being gassed. Usage: primarily used by Geoff
- Goodfellow at SRI, but spreading; became particularly popular after
- the Moscone/Milk murders in San Francisco, when it was learned that
- Dan White (who supported Proposition 7) would get the gas chamber
- under 7 if convicted. He was eventually found not guilty by reason
- of insanity.
-
- <GC> /jee-see/ [from LISP terminology; "Garbage Collect"] 1. vt. To
- clean up and throw away useless things. "I think I'll <GC> the
- top of my desk today." When said of files, this is equivalent to
- <GFR>. 2. vt. To recycle, reclaim, or put to another use. 3. n.
- An instantiation of the garbage collector process. "Garbage
- collection" is computer science jargon for a particular class of
- strategies for dynamically reallocating computer memory. One such
- strategy involves periodically scanning all the data in memory and
- determining what is no longer useful; useless data items are then
- discarded so that the memory they occupy can be recycled and used
- for another purpose. Implementations of the LISP language usually
- use garbage collection. In slang, the full phrase is sometimes
- heard but the acronym is more frequently used because it's shorter.
- Note that there is an ambiguity in usage that has to be resolved by
- context: "I'm going to garbage-collect my desk" usually means to
- clean out the drawers, but it could also mean to throw away or
- recycle the desk itself.
-
- Warning: in X programming, a `GC' may be a graphics context. This
- technical term has nothing to do with the jargon <GC>!
-
- <GCOS> n. A quick and dirty <clone> of System/360 DOS that emerged
- from GE about 1970; originally called GECOS (the General Electric
- Comprehensive Operating System) and later kluged to support
- primitive timesharing and transaction processing. After the buyout
- of GE's computer division by Honeywell the name was changed to
- General Comprehensive Operating System (GCOS). Other OS groups at
- Honeywell began referring to it as `God's Chosen Operating System',
- allegedly in reaction to the GCOS crowd's uninformed and snotty
- attitude about the superiority of their product. All this might be
- of zero interest, except for two facts: 1. the GCOS people won the
- political war, resulting in the orphaning and eventual death of
- Honeywell <Multics>, and 2. GECOS/GCOS left one permanent mark
- on UNIX. Some early UNIX systems at Bell Labs were used as front
- ends to GCOS machines; the field added to /etc/passwd to carry GCOS
- ID information was called the "GECOS field" and survives today as
- the pw_gecos member used for the user's full name and other
- human-id information. GCOS later played a major role in keeping
- Honeywell a dismal also-ran in the mainframe market, and was itself
- ditched for UNIX in the late 1980s when Honeywell retired its aging
- <big iron> designs.
-
- <GECOS> n. See GCOS
-
- <gedanken> /g@-dahn'kn/ adj. Wild-eyed; impractical; not
- well-thought-out; untried; untested. "Gedanken" is a German word
- for "thought". A thought experiment is one you carry out in your
- head. In physics, the term "gedanken experiment" is used to
- refer to an experiment that is impractical to carry out, but useful
- to consider because you can reason about it theoretically. (A
- classic gedanken experiment of relativity theory involves thinking
- about a man flying through space in an elevator.) Gedanken
- experiments are very useful in physics, but you have to be careful.
- It was a gedanken experiment that led Aristotle to conclude that
- heavy things always fall faster than light things (he thought about
- a rock and a feather); this was accepted until Galileo proved
- otherwise. Among hackers, however, the word has a pejorative
- connotation. It is said of a project, especially one in artificial
- intelligence research, which is written up in grand detail
- (typically as a Ph.D. thesis) without ever being implemented to any
- great extent. Such a project is usually perpetrated by people who
- aren't very good hackers or find programming distasteful or are
- just in a hurry. A gedanken thesis is usually marked by an obvious
- lack of intuition about what is programmable and what is not, and
- about what does and does not constitute a clear specification of an
- algorithm.
-
- <geek out> vi. To temporarily enter techno-nerd mode while in a
- non-hackish context, for example at parties held near computer
- equipment. Especially used when you need to do something highly
- technical and don't have time to explain: "Pardon me while I geek
- out for a moment."
-
- <gen> /jen/ n.,v. Short for <generate>, used frequently in both spoken
- and written contexts.
-
- <gender mender> n., also "gender bender", "gender blender",
- "sex changer" and even "homosexual adaptor"; there appears to
- be some confusion as to whether a `male homosexual adapter' has
- pins on both sides (is male) or sockets on both sides (connects two
- males). A cable connector shell with either two male or two female
- connectors on it, used to correct the mismatches that result when
- some <loser> didn't understand the RS232C specification and the
- distinction between DTE and DCE. Used esp. for RS-232C parts in
- either the original D-25 or the IBM PC's bogus D-9 format.
-
- <General Public Virus> n. Pejorative name for some versions of the
- <GNU> project <copyleft> or General Public License (GPL), which
- requires that any tools or <app>s incorporating copylefted code
- must be source-distributed on the same counter-commercial terms as
- GNU stuff. Thus it is alleged that the copyleft `infects' software
- generated with GNU tools, which may in turn infect other software
- that reuses any of its code. The Free Software Foundation's
- official position as of January 1991 is that copyright law limits
- the scope of the GPL to "programs textually incorporating
- significant amounts of GNU code", and that the `infection' is not
- passed on to third parties unless actual GNU source is transmitted
- (as in, for example, use of the Bison parser skeleton).
- Nevertheless, widespread suspicion that the <copyleft> language
- is `boobytrapped' has caused many developers to avoid using GNU
- tools and the GPL license.
-
- <generate> vt. To produce something according to an algorithm or
- program or set of rules, or as a (possibly unintended) side effect
- of the execution of an algorithm or program. The opposite of
- <parse>. This term retains its mechanistic connotations (though
- often humorously) when used of human behavior. "The guy is
- rational most of the time, but mention nuclear energy around him
- and he'll generate <infinite> flamage."
-
- <Get a life!> imp. Hacker-standard way of suggesting that the person
- to whom you are speaking has succumbed to terminal geekdom (see
- <computer geek>). Often heard on <USENET>. This exhortation was
- originally uttered by William Shatner on a Saturday Night Live
- episode in a speech which ended "Get a *life*!".
-
- <Get a real computer!> imp. Typical hacker response to news that
- somebody is having trouble getting work done on a system that is a)
- single-tasking, b) has no Winchester, or c) has an address space
- smaller than 4 megabytes. This is as of 1990; note that the
- threshold for `real computer' rises with time, and it may well be
- (for example) that machines with character-only displays will be
- considered `unreal' in a few years. See <bitty box> and <toy>.
-
- <GFR> /jee eff ar/ vt. [acronym, ITS] From "Grim File Reaper", an
- ITS utility. To remove a file or files according to some
- program-automated or semi-automatic manual procedure, especially
- one designed to reclaim mass storage space or reduce namespace
- clutter. Often generalized to pieces of data below file level.
- "I used to have his phone number but I guess I <GFR>ed it." See
- also <prowler>, <reaper>.
-
- <gig> /jig/ or /gig/ n. Short for "gigabyte" (1024 megabytes);
- esp. used in describing amounts of <core> or mass storage. "My
- machine just got upgraded to a quarter-gig". See also <kilo->.
-
- <giga-> /ji'ga/ or /gi'ga/ pref. Multiplier, 10 ^ 9 or 2 ^ 30. See
- <kilo->.
-
- <GIGO> /gie'goh/ [acronym] 1. Garbage In, Garbage out --- Usually said
- in response to lusers who complain that a program didn't complain
- about faulty data. Also commonly used to describe failures in
- human decision making due to faulty, incomplete or imprecise data.
- 2. Garbage In, Gospel Out --- this more recent expansion is a
- sardonic comment on the tendency human beings have to put excessive
- trust in "computerized" data.
-
- <gillion> /jill'y@n/ n. 10 ^ 9. [From <giga->, following
- construction of mega/million and notional tera/trillion] Same as an
- American billion or a British `milliard'.
-
- <glark> /glark/ vt. To figure something out from context. "The
- System III manuals are pretty poor, but you can generally glark the
- meaning from context". Interestingly, the word was originally
- `glork'; the context was "This gubblick contains many nonsklarkish
- English flutzpahs, but the overall pluggandisp can be glorked [sic]
- from context." by David Moser, quoted by Douglas Hofstadter in his
- `Metamagical Themas' column in the January 1981 Scientific
- American. It is conjectured that hackish usage mutated the verb to
- `glark' because <glork> was already an established jargon term.
-
- <glass> [IBM] n. Synonym for <silicon>.
-
- <glass tty> /glas tee-tee-wie/ or /glas ti'tee/ n. A terminal which
- has a display screen but which, because of hardware or software
- limitations, behaves like a teletype or other printing terminal,
- thereby combining the disadvantages of both: like a printing
- terminal, it can't do fancy display hacks, and like a display
- terminal, it doesn't produce hard copy. An example is the early
- `dumb' version of Lear-Siegler ADM-3 (without cursor control). See
- <tube>, <tty>. See Appendix A for an interesting true story
- about glass ttys.
-
- <glitch> /glich/ [from German "glitschen" to slip, via Yiddish
- "glitshen", to slide or skid] 1. n. A sudden interruption in
- electric service, sanity, continuity, or program function.
- Sometimes recoverable. An interruption in electric service is
- specifically called a "power glitch". This is of grave concern
- because it usually crashes all the computers. More common in
- slang, though, a hacker who got to the middle of a sentence and
- then forgot how he or she intended to complete it might say,
- "Sorry, I just glitched". 2. vi. To commit a glitch. See
- <gritch>. 3. vt. [Stanford] To scroll a display screen several
- lines at a time. This derives from some oddities in the terminal
- behavior under the mutant TOPS-10 formerly used at SAIL. 4. (obs.)
- Same as <magic cookie>, sense #2.
-
- <glob> /glob/, *not* /glohb/ [UNIX, from `glob', the name
- of a subprogram that translated wildcards in archaic Bourne Shell
- versions] vt.,n. To expand special characters in a wildcarded name,
- or the act of so doing (the action is also called "globbing").
- The UNIX conventions for filename wildcarding have become
- sufficiently pervasive that many hackers use some of them in
- written English, especially in email or news on technical topics.
- Those commonly encountered include:
-
- * wildcard for any string (see UN*X).
- ? wildcard for any character (generally only read this way
- at the beginning or in the middle of a word).
- [] wildcard matching one character from a specified set.
- {} alternation of comma-separated alternatives. Thus,
- `foo{bar,baz}' would be read as `foobar' or `foobaz'.
-
- Some examples: "He said his name was [KC]arl" (expresses
- ambiguity). "That got posted to talk.politics.*" (all the
- talk.politics subgroups on <USENET>). Other examples are given
- under the entry for <X>.
-
- <glork> /glork/ 1. interj. Term of mild surprise, usually tinged with
- outrage, as when one attempts to save the results of two hours of
- editing and finds that the system has just crashed. 2. Used as a
- name for just about anything. See <foo>. 3. vt. Similar to
- <glitch>, but usually used reflexively. "My program just glorked
- itself."
-
- <glue> n. Generic term for any interface logic or protocol that
- connects between two monolithic component blocks. For example, the
- <Blue Glue> is IBM's SNA protocol, and hardware designers call
- anything used to connect large VLSI's or circuit blocks "glue
- logic".
-
- <gnarly> adj. Both <obscure> and <hairy> in the sense of complex.
- "Yeech --- the tuned assembler implementation of BitBlt is really
- gnarly!" From a similar but less specific usage in surfer slang.
-
- <GNU> /gnoo/, *not* /noo/ 1. [acronym for "GNU's Not UNIX!"]
- A UNIX-workalike development effort of the Free Software Foundation
- headed by Richard Stallman (rms@prep.ai.mit.edu). GNU EMACS and
- the GNU C compiler, two tools designed for this project, have
- become very popular in hackerdom. The GNU project was designed
- partly to prosyletize for RMS's position that information is
- community property and all software source should be shared (one of
- its slogans is "Help stamp out software hoarding!"). Though this
- remains controversial (because it implicitly denies any right of
- designers to own and assign the results of their labors), many
- hackers who disagree with him have nevertheless cooperated to
- produce large amounts of high-quality software available for free
- redistribution under the Free Software Foundation imprimatur. See
- <EMACS>, <copyleft>, <General Public Virus>. 2. Noted UNIX
- hacker John Gilmore (gnu@toad.com), founder of USENET's anarchic
- alt.* hierarchy.
-
- <GNUMACS> /gnoo'maks/ [contraction of `Gnu Emacs'] Often-heard
- abbreviated name for the <GNU> project's flagship tool, <EMACS>.
- Used esp. in contrast with <GOSMACS>.
-
- <go flatline> [from cyberpunk SF, refers to flattening of EEG traces
- upon brain-death] vi., also adjectival <flatlined>. 1. To die,
- terminate, or fail, esp. irreversibly. In hacker parlance this is
- used of machines only, human death being considered somewhat too
- serious a matter to employ jargon-jokes about. 2. To go completely
- quiescent; said of machines undergoing controlled shutdown. "You
- can suffer file damage if you shut down UNIX but power off before
- the system has gone flatline." 3. A particular failure mode of
- video tubes in which vertical scan is lost, so all one sees is a
- bright horizontal line bisecting the screen.
-
- <gobble> vt. To consume or to obtain. The phrase <gobble up> tends to
- imply `consume', while <gobble down> tends to imply `obtain'.
- "The output spy gobbles characters out of a <tty> output buffer."
- "I guess I'll gobble down a copy of the documentation tomorrow."
- See also <snarf>.
-
- <golden> adj. [perh. from folklore's `golden egg'] When used to
- describe a magnetic medium (e.g. `golden disk', `golden tape'),
- describes one containing a tested, up-to-spec, ready-to-ship
- software version.
-
- <gonk> /gonk/ vt.,n. 1. To prevaricate or to embellish the truth
- beyond any reasonable recognition. It is alleged that in German
- the term is (fictively) "gonken", in Spanish the verb becomes
- "gonkar". "You're gonking me. That story you just told me is a
- bunch of gonk." In German, for example, "Du gonkst mir" (You're
- pulling my leg). See also <gonkulator>. 2. [British] To grab some
- sleep at an odd time.
-
- <gonkulator> /gon'kyoo-lay-tr/ [from the old `Hogan's Heroes' TV
- series] n. A pretentious piece of equipment that actually serves no
- useful purpose. Usually used to describe one's least favorite
- piece of computer hardware. See <gonk>.
-
- <gonzo> /gon'zo/ [from Hunter S. Thompson] adj. Overwhelming;
- outrageous; over the top; very large, esp. used of collections of
- source code, source files or individual functions. Has some of the
- connotations of <moby> and <hairy>.
-
- <Good Thing> adj. Often capitalized; always pronounced as if
- capitalized. 1. Self-evidently wonderful to anyone in a position
- to notice: "The Trailblazer's 19.2Kbaud PEP mode with on-the-fly
- Lempel-Ziv compression is a Good Thing for sites relaying
- netnews." 2. Something which can't possibly have any ill side
- effects and may save considerable grief later: "Removing the
- self-modifying code from that shared library would be a Good
- Thing." 3. When said of software tools or libraries, as in "YACC
- is a Good Thing", specifically connotes that the thing has
- drastically reduced a programmer's work load. Oppose <Bad Thing>.
-
- <gorilla arm> n. The side-effect that destroyed touch-screens as a
- mainstream input technology despite a promising start in the early
- eighties. It seems the designers of all those <spiffy> touch-menu
- systems failed to notice that humans aren't designed to hold their
- arms in front of their faces making small motions. After more than
- a very few selects the arm begins to feel sore, cramped, and
- oversized, hence `gorilla arm'. This is now considered a classic
- Horrible Example and cautionary tale to human-factors designers;
- "Remember the gorilla arm!" is shorthand for "How's this gonna
- fly in *real* use?"
-
- <gorp> /gorp/ [CMU, perhaps from the canonical hiker's food, Good
- Old Raisins And Peanuts] Another metasyntactic variable, like
- <foo> and <bar>.
-
- <GOSMACS> /goz'maks/ [contraction of `Gosling Emacs'] n. The first
- <EMACS>-in-C implementation, predating but now largely eclipsed by
- <GNUMACS>. Originally freeware; a commercial version is now
- modestly popular as `UniPress Emacs'. The author (James Gosling)
- went on to invent NeWS.
-
- <Gosperism> /gos'p@r-iz-m/ A hack, invention, or saying by
- arch-hacker R. William (Bill) Gosper. This notion merits its own
- term because there are so many of them. Many of the entries in
- <HAKMEM> are Gosperisms; see also <life>.
-
- <grault> /grawlt/ n. Yet another meta-syntactic variable, invented by
- Mike Gallaher and propagated by the <GOSMACS> documentation. See
- <corge>.
-
- <gray goo> n. A hypothetical substance composed of <sagans> of
- sub-micron-sized Von Neumann machines (self-replicating robots)
- programmed to make copies of themselves out of whatever is
- available. The image that goes with the term is one of the entire
- biosphere of Earth being eventually converted to robot goo. This
- is the simplest of the <nanotechnology> disaster scenarios and is
- easily refuted by arguments from energy requirements and elemental
- abundances.
-
- <Great Renaming> n. The <flag day> on which all of the groups on the
- <USENET> had their names changed from the net.- format to the
- current multiple-hierarchies scheme.
-
- <Great Runes> n. Uppercase-only text or display messages. Some
- archaic operating systems still emit these. See also <runic>,
- <smash case>, <fold case>, <mixed case>.
-
- <great-wall> [from SF fandom] vi.,n. A mass expedition to an oriental
- restaurant, esp. one where food is served family-style and shared.
- There is a common heuristic about the amount of food to order
- expressed as "For N people, get N - 1 entrees.". See ORIENTAL
- FOOD, <ravs>, <stir-fried random>.
-
- <Green Book> n. 1. One of the three standard PostScript references
- (`PostScript Language Program Design', Adobe Systems,
- Addison-Wesley 1988 QA76.73.P67P66 ISBN 0-201-14396-8); see also
- <Red Book>, <Blue Book>). 2. Informal name for one of the three
- standard references on PostScript: `Smalltalk-80: Bits of
- History, Words of Advice', Glenn Krasner, Addison-Wesley 1983,
- QA76.8.S635S58, ISBN 0-201-11669-3 (this is also associated with
- blue and red books). 3. The `X/Open Compatibility Guide'.
- Defines an international standard <UNIX> environment that is a
- proper superset of POSIX/SVID; also includes descriptions of a
- standard utility toolkit, systems administrations features, and the
- like. This grimoire is taken with particular seriousness in
- Europe. See <Purple Book>. 4. The IEEE 1003.1 POSIX Operating
- Systems Interface standard has been dubbed "The Ugly Green Book".
- 5. Any of the 1992 standards which will be issued by the CCITT 10th
- plenary assembly. Until now, these have changed color each review
- cycle (1984 was <Red Book>, 1988 <Blue Book>); however, it is
- rumored that this convention is going to be dropped befor 1992.
- These include, among other things, the X.400 email spec and the
- Group 1 through 4 fax standards. See also <Blue Book>, <Red Book>,
- <Green Book>, <Silver Book>, <Purple Book>, <Orange Book>, <White
- Book>, <Dragon Book>, <Pink-Shirt Book>.
-
- <green bytes> n. 1. Meta-information imbedded in a file such as the
- length of the file or its name; as opposed to keeping such
- information in a separate description file or record. Name comes
- from an IBM user's group meeting where these two approaches were
- being debated and the diagram of the file on the blackboard had the
- `green bytes' drawn in green. 2. By extension, the
- non-data bits in any self-describing format. "A GIF file
- contains, among other things, green bytes describing the packing
- method for the image."
-
- <green card> n. [after the IBM System/360 Reference Data card] This
- is used for any summary of an assembly language, even if the color is
- not green. Less frequently used now because of the decrease in the
- use of assembly language. "I'll go get my green card so I can
- check the addressing mode for that instruction." Some green cards
- are actually booklets.
-
- The original green card became a yellow card when the System/370
- was introduced, and later a yellow booklet. An anecdote from IBM
- refers to a scene that took place in a programmers' terminal room
- at Yorktown in 1978. A luser overheard one of the programmers ask
- another "Do you have a green card?". The other grunted and
- passed the first a thick yellow booklet. At this point the luser
- turned a delicate shade of olive and rapidly left the room, never
- to return. See also <card>.
-
- <green lightning> [IBM] n. 1. Apparently random flashing streaks on
- the face of 3278-9 terminals while a new symbol set is being
- downloaded. This hardware bug was left deliberately unfixed, as
- some genius within IBM suggested it would let the user know that
- `something is happening'. That, it certainly does. 2. [proposed]
- Any bug perverted into an alleged feature by adroit rationalization
- or marketing. E.g. "Motorola calls the CISC cruft in the 88000
- architecture `compatibility logic', but I call it green
- lightning".
-
- <green machine> n. A computer or peripheral device that has been
- designed and built to military specifications for field equipment
- (that is, to withstand mechanical shock, extremes of temperature
- and humidity, and so forth). Comes from the olive-drab `uniform'
- paint used for military equipment.
-
- <grep> /grep/ [from the qed/ed editor idiom g/re/p , where
- re stands for a regular expression, to Globally search for the
- Regular Expression and Print the lines containing matches to it)
- via <UNIX> `grep(1)'] vt. To rapidly scan a file or file set
- looking for a particular string or pattern. By extension, to look
- for something by pattern. "Grep the bulletin board for the system
- backup schedule, would you?"
-
- <grind> vt. 1. [MIT and Berkeley] To format code, especially LISP
- code, by indenting lines so that it looks pretty. This usage was
- associated with the MACLISP community and is now rare;
- <prettyprint> was and is the generic term for such operations. 2.
- [UNIX] To generate the formatted version of a document from the
- nroff, troff, TeX or Scribe source. The BSD program `vgrind' grinds
- code for printing on a Versatec bitmapped printer. 3. To run
- seemingly interminably, esp. (but not necessarily) if performing
- some tedious and inherently useless task. Similar to <crunch> or
- <grovel>. Grinding has a connotation of using a lot of CPU time,
- but it is possible to grind a disk, network, etc. See also <hog>.
- 4. To make the whole system slow, e.g. "Troff really makes things
- grind to a halt on a PDP-11". 5. <grind grind> excl. Roughly,
- "Isn't the machine slow today!"
-
- <grind crank> n. A mythical accessory to a terminal. A crank on the
- side of a monitor, which when operated makes a zizzing noise and
- causes the computer to run faster. Usually one does not refer to a
- grind crank out loud, but merely makes the appropriate gesture and
- noise. See <grind>, and <wugga wugga>.
-
- Historical note: At least one real machine actually had a grind
- crank --- the R1, a research machine built towards the the end of
- the days of the great vacuum tube computers in 1959. R1 (also
- known as `The Rice Institute Computer' - TRIC, and later as `The
- Rice University Computer' - TRUC) had a single step/free run
- switch for use when debugging programs. Since single stepping
- through a large program was rather tedious, there was also a crank
- with a cam and gear arrangement that repeatedly pushed the single
- step button. This allowed one to `crank' through a lot of code,
- then slow down to single step a bit when you got near the code of
- interest, poke at some registers using the console typewriter,
- and then keep on cranking.
-
- <gritch> /grich/ 1. n. A complaint (often caused by a <glitch>). 2.
- vi. To complain. Often verb-doubled: "Gritch gritch". 3. A
- synonym for <glitch> (as verb or noun).
-
- <grok> /grok/ [from the novel `Stranger in a Strange Land', by
- Robert Heinlein, where it is a Martian verb meaning literally "to
- drink" and metaphorically "to be one with"] vt. 1. To
- understand, usually in a global sense. Connotes intimate and
- exhaustive knowledge. Contrast <zen>, similar supernal
- understanding as a single brief flash. 2. Used of programs, may
- connote merely sufficient understanding, e.g., "Almost all C
- compilers grok void these days."
-
- <gronk> /gronk/ [popularized by the cartoon strip `B.C.' by Johnny
- Hart, but the word apparently predates that] vt. 1. To clear the
- state of a wedged device and restart it. More severe than "to
- <frob>". 2. To break. "The teletype scanner was gronked,
- so we took the system down." 3. <gronked>: adj. Of people, the
- condition of feeling very tired or sick. Oppose <broken>, which
- means about the same as <gronk> used of hardware but connotes
- depression or mental/emotional problems in people. 4. <gronk out>:
- vi. To cease functioning. Of people, to go home and go to sleep.
- "I guess I'll gronk out now; see you all tomorrow."
-
- <grovel> vi. 1. To work interminably and without apparent progress.
- Often used transitively with `over' or `through'. "The file
- scavenger has been grovelling through the file directories for ten
- minutes now." Compare <grind> and <crunch>. Emphatic form:
- <grovel obscenely>. 2. To examine minutely or in complete detail.
- "The compiler grovels over the entire source program before
- beginning to translate it." "I grovelled through all the
- documentation, but I still couldn't find the command I wanted."
-
- <grunge> [Cambridge] n. Code which is `dead' (can never be accessed)
- due to changes in other parts of the program. The preferred term
- in North America is <dead code>,
-
- <grungy> /gruhn'jee/ adj. Incredibly dirty, greasy, or grubby.
- Anything which has been washed within the last year is not really
- grungy. Also used metaphorically; hence some programs (especially
- crocks) can be described as grungy. Now (1990) also common in
- mainstream slang.
-
- <gubbish> /guh'bish/ [a portmanteau of "garbage" and "rubbish"?]
- n. Garbage; crap; nonsense. "What is all this gubbish?" The
- opposite portmanteau "rubbage" is also reported.
-
- <guiltware> n. <freeware> decorated with a message telling one how
- long and hard the author worked on this program and intimating that
- one is a no-good freeloader if one does not immediately send the
- poor suffering martyr gobs of money.
-
- <gumby> /guhm'bee/ [from a class of Monty Python characters, poss.
- themselves named after a '60s claymation character] n. An act of
- minor but conspicuous stupidity, often in "gumby maneuver" or
- "pull a gumby".
-
- <gun> [from the :GUN command on ITS] vt. To forcibly terminate a
- program or job (computer, not career). "Some idiot left a
- background process running soaking up half the cycles, so I gunned
- it." Compare <can>.
-
- <gurfle> /ger'fl/ interj. An expression of shocked disbelief. "He
- said we have to recode this thing in FORTRAN by next week.
- Gurfle!" Compare <weeble>.
-
- <guru> n. 1. [UNIX] An expert. Implies not only <wizard> skill but a
- history of being a knowledge resource for others. Less often, used
- (with a qualifier) for other experts on other systems, as in `VMS
- guru'. 2. Amiga equivalent of "panic" in UNIX. When the system
- crashes a cryptic message "GURU MEDITATION #XXXXXXXX.YYYYYYYY"
- appears, indicating what the problem was. An Amiga guru can figure
- things out from the numbers. Generally a <guru> event must be
- followed by a <vulcan nerve pinch>.
-
- {= H =}
-
- <h infix> [from SF fandom] A method of `marking' common words in the
- linguist's sense, i.e. calling attention to the fact that they are
- being used in a nonstandard, ironic or humorous way. Orig. in the
- fannish catchphrase "Bheer is the One True Ghod" from decades
- ago. H-infix marking of `Ghod' and other words spread into the
- Sixties counterculture via underground comix, and into early
- hackerdom either from the counterculture or SF fandom (all three
- overlapped heavily at the time). More recently, the h infix has
- become an expected feature of benchmark names, i.e. Whetstone,
- Dhrystone, Rhealstone, etc; this is prob. patterning on the
- original Whetstone name but influenced by the
- fannish/counterculture H infix.
-
- <ha ha only serious> [from SF fandom, orig. as mutation of HHOK,
- "Ha Ha Only Kidding"] A phrase that aptly captures the flavor of
- much hacker discourse (often seen abbreviated as HHOS). Applied
- especially to parodies, absurdities and ironic jokes that are both
- intended and perceived to contain a possibly disquieting amount of
- truth, or truths which are constructed on in-joke and self-parody.
- The jargon file contains many examples of ha-ha-only-serious in
- both form and content. Indeed, the entirety of hacker culture is
- often perceived as ha-ha-only-serious by hackers themselves; to
- take it either too lightly or too seriously marks a person as an
- outsider, a <wannabee> or in <larval stage>. For further
- enlightenment on this subject, consult any Zen master. See also
- HUMOR, HACKER and <AI koans>.
-
- <hack> 1. n. Originally a quick job that produces what is needed,
- but not well. 2. n. An incredibly good, and perhaps very
- time-consuming, piece of work that produces exactly what is needed.
- 4. n. The result of a hack (sense 1 or 2); 3. "neat hack": n.,
- A clever technique. Also, a brilliant practical joke, where
- neatness is correlated with cleverness, harmlessness, and surprise
- value. Example: the Caltech Rose Bowl card display switch (see
- Appendix A). 5. "real hack": A crock (occasionally
- affectionate). vt. 6. With `together', to throw something
- together so it will work. 7. vt. To bear emotionally or physically.
- "I can't hack this heat!" 8. vt. To work on something (typically
- a program). In specific sense: "What are you doing?" "I'm
- hacking TECO." In general sense: "What do you do around here?"
- "I hack TECO." (The former is time-immediate, the latter
- time-extended.) More generally, "I hack x" is roughly equivalent
- to "x is my major interest (or project)". "I hack solid-state
- physics." 9. vt. To pull a prank on. See definition 3 and
- <hacker> (def #6). 10. vi. To waste time (as opposed to
- <tool>). "Watcha up to?" "Oh, just hacking." 11. "hack
- up", "hack on": vt., To hack, but generally implies that the
- result is meanings 1-2. 12. [UNIX] n. A dungeon game similar to
- <rogue> but more elaborate, distributed in C source over
- <USENET> and very popular at UNIX sites and on PC-class machines.
- Recent versions are called `nethack'. 13. n. Short for
- <hacker>, which see.
-
- Constructions on this term abound. They include: "happy hacking": A
- farewell. <how's hacking?>: A friendly greeting among hackers.
- "hack hack": A somewhat pointless but friendly comment, often used
- as a temporary farewell. For more on the meaning of <hack> see
- Appendix A.
-
- <hack attack> [poss by analogy with `Big Mac Attack'] n. Nearly
- synonymous with <hacking run> though the latter implies an
- all-nighter more strongly.
-
- <hack value> n. Often adduced as the reason or motivation for
- expending effort toward a seemingly useless goal, the point being
- that the accomplished goal is a hack. For example, MacLISP has
- features for reading and printing roman numerals, which was
- installed purely for hack value. As a musician once said of jazz,
- if you don't understand hack value there is no way it can be
- explained.
-
- <hack-and-slay> n. 1. To play a <MUD> or go mudding, especially with
- the intention of <berserking> for pleasure. 2. To undertake an
- all-night programming/hacking session, interspersed with stints of
- mudding to alleviate boredom. This term arose on the British
- academic network amongst students who worked nights and logged onto
- Essex University's MUDs during public-access hours (2am =>
- 7am). Usually more mudding than work was done in these sessions.
-
- <hacked-off> adj. Said of system administrators who have become
- annoyed, upset or touchy due to suspicions that their sites have
- been or are going to be victimized by crackers, or used for
- inappropriate, technically illegal, or even overtly criminal
- activities. For example, having unreadable files in your home
- directory called `worm', `lockpick', or `goroot' would probably be
- an effective way to get your sysadmin hacked off at you, not to
- mention a monumentally obvious and stupid one.
-
- <hacker> [originally, someone who makes furniture with an axe] n. 1. A
- person who enjoys learning the details of programming systems and
- how to stretch their capabilities, as opposed to most users who
- prefer to learn only the minimum necessary. 2. One who programs
- enthusiastically (even obsessively), or who enjoys programming
- rather than just theorizing about programming. 3. A person capable
- of appreciating <hack value>. 4. A person who is good at
- programming quickly. Not everything a hacker produces is a hack.
- 5. An expert at a particular program, or one who frequently does
- work using it or on it; example: "A UNIX hacker". (Definitions 1
- to 5 are correlated, and people who fit them congregate.) 6. An
- expert of any kind. One might be an astronomy hacker, for example.
- 7. (deprecated) A malicious or inquisitive meddler who tries to
- discover information by poking around. Hence "password hacker",
- "network hacker". See <cracker>.
-
- <hack mode> n. 1. What one is in when hacking, of course. 2. More
- specifically, a Zen-like state of total focus on The Problem which
- may be achieved when one is hacking. Ability to enter such
- concentration at will correlates strongly with wizardliness; it is
- one of the most important skills learned during <larval stage>.
- Sometimes amplified as "deep hack mode". Being yanked out of hack
- mode (see <priority interrupt>) may be experienced as an almost
- physical shock, and the sensation of being in it is more than a
- little habituating. The intensity of this experience is probably
- by itself sufficient explanation for the existence of hackers, and
- explains why many resist being promoted out of positions where they
- can do code. See also <cyberspace> (sense #2).
-
- <hacking run> [analogy with "bombing run" or "speed run"] n. A
- hack session extended long outside normal working times, especially
- one longer than 12 hours. May cause you to "change phase the hard
- way" (see <phase>).
-
- <hackish> /hak'ish/ adj. (also <hackishness> n.) 1. Being or involving
- a hack. 2. Of or pertaining to hackers or the hacker subculture.
- See also <true-hacker>. It is better to be described as hackish by
- others than to describe oneself that way. Hackers consider
- themselves somewhat of an elite, though one to which new members
- are gladly welcome. It is a meritocracy based on ability. There
- is a certain self-satisfaction in identifying yourself as a hacker
- (but if you claim to be one and are not, you'll quickly be labelled
- <bogus>).
-
- <hackishness> n. The quality of being or involving a hack.
-
- <hackitude> n. Syn. <hackitude>; this word is considered silly.
-
- <hair> [back-formation from <hairy>] n. The complications which
- make something hairy. "Decoding <TECO> commands requires a
- certain amount of hair." Often seen in the phrase <infinite
- hair>, which connotes extreme complexity. Also in <hairiferous>
- (tending to promote hair growth): "GNUMACS elisp encourages lusers
- to write complex editing modes." "Yeah, it's pretty hairiferous
- all right." (or just: "Hair squared!")
-
- <hairy> adj. 1. Overly complicated. "<DWIM> is incredibly hairy."
- 2. Incomprehensible. "<DWIM> is incredibly hairy." 3. Of
- people, high-powered, authoritative, rare, expert, and/or
- incomprehensible. Hard to explain except in context: "He knows
- this hairy lawyer who says there's nothing to worry about."
-
- <HAKMEM> /hak'mem/ n. MIT AI Memo 239 (February 1972). A legendary
- collection of neat mathematical and programming hacks contributed
- by many people at MIT and elsewhere. (The title of the memo really
- is "HAKMEM", which is an acronym of sorts for `hacks memo'.)
- Some of them are very useful techniques or powerful theorems, but
- most fall into the category of mathematical and computer trivia. A
- sampling of the entries (with authors), slightly paraphrased:
-
- Item 41 (Gene Salamin) There are exactly 23,000 prime numbers less
- than 2 ^ 18.
-
- Item 46 (Rich Schroeppel) The most *probable* suit
- distribution in bridge hands is 4-4-3-2, as compared to 4-3-3-3,
- which is the most *evenly* distributed. This is because the
- world likes to have unequal numbers: a thermodynamic effect saying
- things will not be in the state of lowest energy, but in the state
- of lowest disordered energy.
-
- Problem 81 (Rich Schroeppel) Count the magic squares of order 5
- (that is, all the 5-by-5 arrangements of the numbers from 1 to 25
- such that all rows, columns, and diagonals add up to the same
- number). There are about 320 million, not counting those that
- differ only by rotation and reflection.
-
- Item 174 (Bill Gosper and Stuart Nelson) 21963283741 is the only
- number such that if you represent it on the <PDP-10> as both an
- integer and a floating-point number, the bit patterns of the two
- representations are identical.
-
- HAKMEM also contains some rather more complicated mathematical and
- technical items, but these examples show some of its fun flavor.
-
- <hakspek> /hak'speek/ n. Generally used term to describe a method of
- spelling to be found on many British academic bulletin boards and
- talker systems. Syllables and whole words in a sentenaineare
- replaced by single ASCII characters which are phonetically similar
- or equivalent, whilst multiple letters are usually dropped. Hence
- `for' becomes `4', `two', `too' and `to' become `2', `ck' becomes
- `k'. "Before I see you tomorrow" becomes "b4 i c u 2moro".
- First appeared in London about 1986, and was probably caused by the
- slow speed of available talker systems, which operated on archaic
- machines with outdated operating systems, and no standard methods
- of communication. Has become rarer nowadays. See also <talk
- mode>.
-
- <hamster> n. A particularly slick little piece of code that does one
- thing well; a small, self-contained hack. The image is of a
- hamster happily spinning its exercise wheel.
-
- <hand-hacking> n. 1. The practice of translating <hot spot>s from an
- <HLL> into custom hand-optimized assembler, as opposed to trying to
- coerce the compiler into generating better code. Both the term and
- the practice are becoming uncommon. See <tune>, <bum>; syn. with
- v. <cruft>. 2. More generally, manual construction or patching of
- data sets that would normally be ground out by a translation
- utility and interpreted by another program, and aren't really
- designed to be read or modified by humans.
-
- <handshaking> n. Hardware or software activity designed to keep two
- machines or programs in synchronization as they <do protocol>.
- Often applied to human activity; thus, a hacker might watch two
- people in conversation nodding their heads to indicate that they've
- heard each others' points and say "Oh, they're handshaking!".
- See also <protocol>.
-
- <handwave> [poss. fr. gestures characteristic of stage magicians] 1.
- v. To gloss over a complex point; to distract a listener; to
- support a (possibly actually valid) point with blatantly faulty
- logic. If someone starts a sentence with "Clearly..." or
- "Obviously..." or "It is self-evident that...", you can
- be sure he is about to handwave. The theory behind this term is
- that if you wave your hands at the right moment, the listener may
- be sufficiently distracted to not notice that what you have said is
- <bogus>. Alternatively, if a listener does object, you might try
- to dismiss the objection with a wave of your hand. 2. n. The act of
- handwaving. "Boy, what a handwave!"
-
- The use of this word is often accompanied by gestures: both hands
- up, palms forward, swinging the hands in a vertical plane pivoting
- at the elbows and/or shoulders (depending on the magnitude of the
- handwave); alternatively, holding the forearms still while rotating
- the hands at the wrist to make them flutter. In context, the
- gestures alone can suffice as a remark; if a speaker makes an
- outrageous unsupported assumption, you might simply wave your hands
- in this way, as an accusation more eloquent than words could
- express that his logic is faulty.
-
- <hang> v. 1. To wait for some event to occur; to hang around until
- something happens. "The program displays a menu and then hangs
- until you type a character." 2. More commonly, to wait for an
- event that will never occur. "The system is hanging because it
- can't read from the crashed drive". See <wedged>, <hung>.
-
- <Hanlon's Razor> n. A `murphyism' parallel to Occam's Razor that
- reads "Never attribute to malice that which can be adequately
- explained by stupidity". The derivation of the common title
- Hanlon's Razor is unknown; a similar epigram has been attributed to
- William James. Quoted here because it seems to be a particular
- favorite of hackers, often showing up in <fortune cookie> files and
- the login banners of BBS systems and commercial networks. This
- probably reflects the hacker's daily experience of environments
- created by the well-intentioned but shortsighted.
-
- <harcoded> adj. 1. Data inserted directly into a program, where it
- cannot be easily modified, as opposed to data in some <profile>
- por environment variable that a <user> or hacker can easily
- modify. 2. In C, this is esp. applied to use of a literal instead
- of a preprocessor #define (see <magic number>).
-
- <hardwarily> /hard-weir'i-lee/ adv. In a way pertaining to hardware.
- "The system is hardwarily unreliable." The adjective
- `hardwary' is *not* used. See <softwarily>.
-
- <hardwired> adj. 1. Syn. for <hardcoded>. Technically, this term
- only applies to hardware, but hackers use it for software as well.
- 2. By extension, anything that is not modifiable, especially in the
- sense of customizable to one's particular needs or tastes.
-
- <has the X nature> [seems to derive from Zen Buddhist koans of the
- form "Does an X have the Buddha-nature?"] adj. Common hacker
- construction for `is an X', used for humorous emphasis. "Anyone
- who can't even use a program with on-screen help embedded in it
- truly has the <loser> nature!"
-
- <hash collision> [from the technical usage] n. When used of people,
- signifies a confusion in associative memory or imagination,
- especially a persistent one (see <thinko>). True story: one of us
- [ESR] was once on the phone with a friend about to move out to
- Berkeley. When asked what he expected Berkeley to be like, the
- friend replied "Well, I have this mental picture of naked women
- throwing Molotov cocktails, but I think that's just a collision in
- my hash tables." The variant "hash clash" is also reported.
-
- <HCF> /aych-see-eff/ n. Mnemonic for "Halt and Catch Fire", any of
- several undocumented and semi-mythical machine instructions with
- destructive side-effects, supposedly included for test purposes on
- several well-known architectures going as far back as the IBM 360.
- The MC6800 microprocessor was the first for which the HCF opcode
- became widely known. This instruction caused the processor to
- <toggle> a subset of the bus lines as rapidly as it can; in some
- configurations this can actually cause lines to burn up.
-
- <heads down> [Sun] adj. Concentrating, usually so heavily and for so
- long that everything outside the focus area is missed. See also
- <larval stage>, although it's not confined to fledgeling hackers.
-
- <heartbeat> n. 1. The signal emitted by a Level 2 Ethernet
- transceiver at the end of every packet to show that the
- collision-detection circuit is still connected. 2. A periodic
- synchronization signal used by software or hardware, such as a bus
- clock or a periodic interrupt. 2. The `natural' oscillation
- frequency of a computer's clock crystal, before frequency division
- down to the machine's clock rate. 3. A signal emitted at regular
- intervals by software to demonstrate that it's still alive.
- Sometimes hardware is designed to reboot the machine if it stops
- hearing a heartbeat. See also <breath-of-life packet>.
-
- <heavy metal> [Cambridge] n. Syn. <big iron>.
-
- <heavy wizardry> n. Code or designs which trade on a particularly
- intimate knowledge or experience of a particular operating system
- or language or complex application interface. Distinguished from
- <deep magic>, which trades more on arcane *theoretical*
- knowledge. Writing device drivers is heavy wizardry; so is
- interfacing to X (sense #2) without a toolkit. Esp. found in
- comments of the form "Heavy wizardry begins here...". Compare
- <voodoo programming>.
-
- <heavyweight> adj. High-overhead; <baroque>; code-intensive;
- featureful, but costly. Esp. used of communication protocols,
- language designs, and any sort of implementation in which
- maximum generality has been pushed at the expense of mundane
- considerations like speed, memory utilization, and start-up time.
- <EMACS> is a heavyweight editor; <X> is an "extremely"
- heavyweight window system. This term isn't pejorative, but one
- man's heavyweight is another's <elephantine> and a third's
- <monstrosity>. Oppose "lightweight".
-
- <heisenbug> /hie'zen-buhg/ [from Heisenberg's Uncertainty Principle in
- quantum physics] n. A bug which disappears or alters its behavior
- when one attempts to probe or isolate it. Antonym of <Bohr bug>.
- In C, 9 out of 10 heisenbugs result from either <fandango on core>
- phenomena (esp. lossage related to corruption of the malloc
- <arena>) or errors which <smash the stack>.
-
- <Helen Keller mode> n. State of a hardware or software system which is
- deaf, dumb, and blind, i.e. accepting no input and generating no
- output, usually due to an infinite loop or some other excursion
- into <deep space>. (Unfair to the real Helen Keller, whose success
- at learning speech was triumphant.) See also <go flatline>.
-
- <hello sailor!> interj. Occasional West Coast equivalent of <hello,
- world!>; seems to have originated at SAIL, later associated with
- the game <Zork> (which also included "hello aviator" and "hello
- implementor"). Originally from the from traditional hooker's
- greeting to to a swabbie fresh off the boat, of course.
-
- <hello wall!> excl. See <wall>.
-
- <hello world!> interj. 1. The canonical minimal test message in the
- C/UNIX universe. In folklore, the first program a C coder is
- supposed to write in a new environment is one that just prints
- "hello, world!" to standard output (and indeed it is the first
- example program in <K&R>). Environments that generate an
- unreasonably large executable for this trivial test or which
- require a <hairy> compiler-linker invocation to generate it are
- considered to <lose>. 2. Greeting uttered by a hacker making an
- entrance or requesting information from anyone present. "Hello,
- world! Is the <VAX> back up yet?"
-
- <hex> n. Short for <hexadecimal>, base 16. This term has nothing
- to do with <black magic>, though the pun is appreciated and
- occasionally used by hackers. True story: as a joke, some hackers
- once offered some surplused ICs for sale to be worn as protective
- amulets against hostile magic. The chips were, of course, hex
- inverters.
-
- <hexadecimal> n. Base 16. Coined in the early nineteen-sixties to
- replace earlier `sexadecimal', which was too racy and amusing for
- stuffy IBM, and later adopted by the rest of the industry.
- Actually, neither term is etymologically pure. The most strictly
- correct term for base-10 is `denary' (compare `binary'), which
- comes from `denarius', one of a group of Latin number words used
- specifically for partitioning (as opposed to numbering); the
- corresponding term for base-16 would be `senidenary'. `Decimal' is
- from a numbering word; the corresponding prefix for six would imply
- `sextidecimal'. The `sexa-' prefix is Latin but incorrect and
- `hexa-' is Greek.
-
- <hexit> /hek'sit/ n. A hexadecimal digit (0-9, A-F). Used by people
- who claim that there are only <ten> digits, dammit; no one has
- ever met a sixteen-fingered human being, regardless of what some
- keyboard designs might seem to imply (see <space-cadet
- keyboard>).
-
- <hidden flag> [scientific computation] n. A extra option added to a
- routine without changing the calling sequence. For example,
- instead of adding an explicit input variable to instruct a routine
- to give extra diagnostic output, the programmer might just add a
- test for some otherwise meaningless feature of the existing inputs,
- such as a negative mass. Liberal use of hidden flags can make a
- program very hard to debug and understand.
-
- <high bit> [poss. fr. `high order bit'] n. 1. See <meta bit>. Also
- meaning most significant part of something other than a data byte,
- e.g. "Spare me the whole saga, just give me the high bit."
-
- <high moby> /hie mohb'ee/ n. The high half of a stock <PDP-10>'s
- address space; the other half was of course the low moby. This
- usage has been generalized in a way that has outlasted the
- <PDP-10>; for example, at the 1990 Washington D.C Area Science
- Fiction Conclave (DISCLAVE) when a miscommunication resulted in two
- separate wakes being held in commemoration of the shutdown of MIT's
- last <ITS> machines, the one on the upper floor was dubbed the high
- moby and the other the low moby. All parties involved grokked this
- instantly. See <moby>.
-
- <highly> [scientific computation] adv. The preferred modifier for
- overstating an understatement. As in: <highly nonoptimal>, the
- worst possible way to do something; <highly nontrivial>, either
- impossible or requiring a major research project; <highly
- nonlinear>, completely erratic and unpredictable; <highly
- nontechnical>, drivel written for <luser>s, oversimplified to the
- point of being misleading or incorrect (compare <drool-proof
- paper>). In other computing cultures, postfixing of <in the
- extreme> might be preferred.
-
- <hirsute> adj. Occasionally used humorously as a synonym for <hairy>.
-
- <HLL> /aych-el-el/ n. [High-Level Language (as opposed to assembler)]
- Found primarily in email and news rather than speech. Rarely, the
- variants `VHLL' and `MLL' are found. VHLL = `Very-High-Level
- Language' and is used to describe a <BONDAGE-AND-DISCIPLINE
- LANGUAGE> that the speaker happens to like; Prolog and Backus's FP
- are often called VHLLs. `MLL' = `Medium-Level Language' and is
- sometimes used half-jokingly to describe C, alluding to its
- `structured-assembler' image. See also <languages of choice>.
-
- <hog> n.,vt. Favored term to describe programs or hardware which seem
- to eat far more than their share of a system's resources, esp.
- those which noticeably degrade general timesharing response.
- *Not* used of programs which are simply extremely large or
- complex or which are merely painfully slow themselves (see <pig,
- run like a>). More often than not encountered in qualified forms,
- e.g. "memory hog", "core hog", "hog the processor", "hog the
- disk". Example: "A controller that never gives up the I/O bus
- gets killed after the bus hog timer expires."
-
- <hobbit> n. The High Order Bit of a byte; same as the <meta bit>.
-
- <holy wars> [from <USENET>, but may predate it] n. <flame war>s
- over <religious issues>. The paper by Danny Cohen that
- popularized the terms <big-endian> and <little-endian> in
- connection with the LSB-first/MSB-first controversy was entitled
- `On Holy Wars and a Plea for Peace'. Other perennial Holy Wars
- have included: <EMACS> vs. <VI>, my personal computer vs.
- everyone else's personal computer, <ITS> vs. <UNIX>, <UNIX>
- vs. <VMS>, <BSD> UNIX vs. <USG> UNIX, C vs. Pascal, etc.
- etc. etc. The characteristic that distinguishes <holy wars> from
- normal technical disputes is that (regardless of the technical
- merits of the case on either side) most participants spend their
- time trying to pass off personal value choices and cultural
- attachments as objective technical evaluations.
-
- <hook> n. An extraneous piece of software or hardware included in
- order to simplify later additions or changes by a user. For
- instance, a PDP-10 assembler program might execute a location that
- is normally a <JFCL>, but by changing the <JFCL> to a PUSHJ one
- can insert a debugging routine at that point. As another example,
- a simple program that prints numbers might always print them in
- base ten, but a more flexible version would let a variable
- determine what base to use; setting the variable to 5 would make
- the program print numbers in base five. The variable is a simple
- hook. An even more flexible program might examine the variable,
- and treat a value of 16 or less as the base to use, but treat any
- other number as the address of a user-supplied routine for printing
- a number. This is a very powerful hook; one can then write a
- routine to print numbers as roman numerals, say, or as Hebrew
- characters, and plug it into the program through the hook. Often
- the difference between a good program and a superb one is that the
- latter has useful hooks in judiciously chosen places. Both may do
- the original job about equally well, but the one with the hooks is
- much more flexible for future expansion of capabilities. The term
- "user exit" is synonymous but more formal.
-
- <home box> n. A hacker's personal machine, especially one he or she
- owns. "Yeah? Well, *my* home box runs a full 4.2BSD, so
- there!"
-
- <hop> n. One file transmission in a series required to get a file
- from point A to point B on a store-and-foward network. On such
- networks (including <UUCPNET> and <Fidonet>), the important
- `distance' between machines is the number of hops in the shortest
- path between them, rather than their geographical separation. See
- <bang path>.
-
- <hose> 1. vt. To make non-functional or greatly degraded in
- performance, as in "That big ray-tracing program really hoses the
- system." See <hosed>. 2. n. A narrow channel through which
- data flows under pressure. Generally denotes data paths in a
- system that represent performance bottlenecks. 3. n. Cabling,
- especially thick Ethernet cable. This is sometimes called "bit
- hose" or "hosery" (play on `hosiery') or "etherhose". See
- also <washing machine>.
-
- <hosed> adj. Same as <down>. Used primarily by UNIX hackers.
- Humorous: also implies a condition thought to be relatively easy to
- reverse. Probably derived from the Canadian slang `hoser'
- popularized by the Bob and Doug skits on SCTV. See <hose>. It is
- aso widely used of people in the mainstream sense of `in an
- extremely unfortunate situation'.
-
- There is a story that a Cray which had been experiencing periodic
- difficulties once crashed, and it was announced to have been
- <hosed>. It was discovered that the crash was due to the
- disconnection of some coolant hoses. The problem was corrected, and
- users were then assured that everything was OK because the system
- had been rehosed. [This is an excellent example of hackish
- wordplay --- ESR].
-
- <hot key> 1. n. A keystroke (or combination of keystrokes) that
- switches environments; esp. used if it flips between different
- modes or screens of a full-screen interface. Perhaps so ╨
- because they are always active or `hot'; possibly related to
- "hot buttons" in <marketroid>-speak. host environment. 2.
- v. To switch environments.
-
- <hot spot> n. 1. [primarily C/UNIX programmers, but spreading] n. In
- most programs, less than 10% of the code eats 90% of the execution
- time; if one were to graph instruction visits versus code
- addresses, one would typically see a few huge spikes amidst a lot
- of low-level noise. Such spikes are called `hot spots' and are
- good candidates for micro-optimization or <hand-hacking>. The term
- is especially used of tight loops and recursions in the code's
- central algorithm, as opposed to (say) initial set-up costs or
- large but infrequent I/O operations. See <tune>, <bum>,
- <hand-hacking>. 2. The active location of a cursor on a bit-map
- display. "Put the mouse's hot spot on the `ON' widget and click
- the left button."
-
- <house wizard> [prob. from ad-agency lingo, cf. `house freak'] n. A
- lone hacker occupying a technical-specialist, R&D or systems
- position at a commercial shop. A really effective house wizard can
- have influence out of all proportion to his/her ostensible rank and
- still not have to wear a suit. Used esp. of UNIX experts. The
- term <house guru> is equivalent.
-
- <HP-SUX> /aych pee suhx/ n. Unflattering hackerism for HP-UX,
- Hewlett-Packard's UNIX port. Features some truly unique bogosities
- in the filesystem internals and elsewhere that occasionally create
- portability problems. HP-UX is often referred to as "hockey-pux"
- inside HP, and one outside correspondent claims that the proper
- pronunciation is /aych-pee ukkkhhhh/ as though one were spitting.
- Another such alternate spelling and pronunciation is "H-PUX"
- /aych-puhks/. Hackers at HP/Apollo (the former Apollo Computer
- that was swallowed by HP in 1989) have been heard to complain that
- Mr. Packard should have pushed to have his name first, if for no
- other reason than the resulting more accurate form for this
- acronym. Compare <buglix>. See also <Telerat>,
- <sun-stools>, <terminak>.
-
- <huff> v. To compress data using a Huffman code. Various programs
- that use such methods have been called `HUFF' or some variant
- thereof. Oppose <puff>. Compare <compress>.
-
- <humma> excl. A filler word used on various `chat' and `talk'
- programs when you had nothing to say but felt that it was important
- to say something. The word apparently originated (at least with
- this definition) on the MECC Timeshare System (MTS) a now-defunct
- educational time-sharing system running in Minnesota during the
- 1970s and early '80s, but was later sighted on early UNIX systems.
-
- <humungous> /hyoo-muhng'g@s/ alt. <humongous> (hyoo-mohng'g@s) See
- <hungus>.
-
- HUMOR, HACKER n. A distinctive style of shared intellectual humor
- found among hackers, having the following marked characteristics:
-
- 1) Fascination with form-vs.-content jokes, paradoxes, and humor
- having to do with confusion of metalevels (see <meta>). One way to
- make a hacker laugh: hold an index card in front of him/her with
- "THIS IS GREEN" written on it in bold red ink, or vice-versa
- (note, however, that this is only funny the first time).
-
- 2) Elaborate deadpan parodies of large intellectual constructs such
- as specifications (see <write-only memory>), standards documents,
- language descriptions (see <INTERCAL>) and even entire scientific
- theories (see <quantum bogodynamics>, <computron>).
-
- 3) Jokes which involve screwily precise reasoning from bizarre,
- ludicrous or just grossly counter-intuitive premises.
-
- 4) Fascination with puns and wordplay.
-
- 5) A fondness for apparently mindless humor with subversive
- currents of intelligence in it, for example: old Warner Brothers
- and Rocky & Bullwinkle cartoons, Charlie Chaplin movies, the B-52s,
- and Monty Python's Flying Circus. Humor which combines this trait
- with elements of high camp and slapstick is especially favored.
-
- 6) References to the symbol-object antinomies and associated ideas
- in Zen Buddhism and (less often) Taoism. See <has the X nature>,
- <Discordianism>, <zen>, <ha ha only serious>, <AI koans>.
-
- See also <filk>; <retrocomputing>; and Appendix B. If you have an
- itchy feeling that all six of these traits are really aspects of
- one thing that is incredibly difficult to talk about exactly, you
- are a) correct and b) responding like a hacker. These traits are
- also recognizable (though in a less marked form) throughout
- SCIENCE-FICTION FANDOM.
-
- <hung> [from "hung up"] adj. Equivalent to <wedged>. but more
- common at UNIX/C sites. Not generally used of people. Syn. with
- <locked up>, <wedged>; compare <hosed>. See also <hang>.
- A hung state is distinguished from `crashed' or <down>, where the
- program or system is also unusable but because it is not running
- rather than because it is waiting for something. However, the
- recovery from both situations is often the same.
-
- <hungus> /huhng'g@s/ [perhaps related to current slang `humungous';
- which one came first (if either) is unclear] adj. Large, unwieldy,
- usually unmanageable. "TCP is a hungus piece of code." "This
- is a hungus set of modifications."
-
- <hyperspace> (hie'per-spays) n. A memory location within a virtual
- memory machine that is many, many megabytes (or gigabytes) away
- from where the program counter should be pointing, usually
- inaccessible because it is not even mapped in. "Another core
- dump... looks like the program jumped off to hyperspace somehow."
- This usage is from the SF notion of a spaceship jumping "into
- hyperspace", that is, taking a shortcut through higher-dimensional
- space --- in other words, leaving this universe.
-
- {= I =}
-
- <i18n> n. Written-only abbrev. for `internationalization', which is
- an `i' followed by 18 letters followed by `n'. Used in the <X>
- community.
-
- <i14y> n. Written-only abbrev. for `interoperability', which is an
- `i' followed by 14 letters followed by `y'. Used in the <X>
- community.
-
- <I didn't change anything!> interj. A plaintive cry often heard as
- bugs manifest during a regression test. The canonical reply to
- this assertion is "Then it works just the same as it did before,
- right?" See also <one-line fix>.
-
- <IBM> /ie bee em/ Inferior But Marketable; It's Better Manually;
- Insidious Black Magic; It's Been Malfunctioning; Incontinent Bowel
- Movement; and a near-<infinite> number of even less complimentary
- expansions, including `International Business Machines'. See
- <TLA>. These abbreviations illustrate the considerable antipathy
- most hackers have long felt for the `industry leader' (see <fear
- and loathing>). What galls hackers about most IBM machines above
- the PC level isn't so much that they're underpowered and overpriced
- (though that counts against them) but that the designs are
- incredibly archaic, crufty and <elephantine> and you can't
- *fix* them --- source code is locked up tight and programming
- tools are expensive, hard to find, and bletcherous to use once
- you've found them. With the release of the UNIX-based RIOS family
- this may have begun to change --- but then, we thought that when
- the PC-RT came out, too. In the spirit of universal peace and
- brotherhood, this lexicon now includes a number of entries marked
- `IBM'; these derive from two rampantly unofficial jargon lists
- circulated among IBM's own beleaguered hacker underground.
-
- <IBM discount> n. A price increase. Outside IBM, this derives from
- the common perception that IBM products are generally hideously
- overpriced (see <clone>); inside, it is said to spring from a
- belief that large numbers of IBM employees living in an area cause
- prices to rise.
-
- <ice> [from William Gibson's cyberpunk SF: notionally, `Intrusion
- Countermeasure Electronics'] Security software (in Gibson's
- original, software that responds to intrusion by attempting to
- literally kill the intruder). Also, <icebreaker>: a program
- designed for cracking security on a system. Neither term is in
- serious use yet as of 1990, but many hackers find the metaphor
- attractive and they may be in the near future.
-
- <ill-behaved> adj. 1. [numerical analysis] Said of an algorithm or
- computational method that tends to blow up due to accumulated
- roundoff error or poor convergence properties. 2. Software which
- bypasses the defined <OS> interfaces to do things (like screen,
- keyboard and disk I/O) itself, often in a way that depends on the
- hardware of the machine it is running on or which is nonportable or
- incompatible with other pieces of software. In the IBM PC/MS-DOS
- world, there is a folk theorem (nearly true) to the effect that
- (due to gross inadequacies and performance penalties in the OS
- interface) all interesting applications are ill-behaved. Oppose
- <well-behaved>, compare <PC-ism>. See <mess-dos>.
-
- <IMHO> [from SF fandom via USENET] Written acronym for In My Humble
- Opinion. Example: "IMHO, mixed-case C names should be avoided, as
- mistyping something in the wrong case can cause hard-to-detect
- errors --- and they look too Pascalish anyhow." Also seen in
- variant forms such as IMNSHO (In My Not-So-Humble Opinion) and IMAO
- (In My Arrogant Opinion).
-
- <in the extreme> adj. A preferred emphasizing suffix for many hackish
- terms. See for example <obscure in the extreme> under <obscure>,
- and compare <highly>.
-
- <incantation> n. Any particularly arbitrary or obscure command that
- must be muttered at a system to attain a desired result. Not used
- of passwords or other explicit security features. Especially used
- of tricks that are so poorly documented they must be learned from a
- <wizard>. E.g. "This compiler normally locates initialized data
- in the data segment, but if you mutter the right incantation they
- will be forced into text space". See <mutter>.
-
- <include> vt. [USENET] 1. To duplicate a portion (or whole) of
- another's message (typically with attribution to the source) in a
- reply or followup, for clarifying the context of one's response.
- 2. A directive; to explicitly command the preprocessor to include a
- file. 3. Derived from C: #include <disclaimer.h> has appeared in
- <sig block>s to denote a `standard' disclaimer file.
-
- <include war> n. Excessive multi-leveled including within a
- discussion <thread>, which tends to annoy readers. In a forum
- such as USENET, with high traffic newsgroups, this can lead to
- <flame>s and the urge to start a <kill file>.
-
- <indent style> [C programmers] n. The rules one uses to lay out code
- in a readable fashion; a subject of <holy wars>. There are four
- major C indent styles, as described below; all have the aim of
- making it easier for the reader to visually track the scope of
- control constructs. The significant variable is the placement of
- { and } with respect to the statement(s) they enclose and the
- guard (if, while, or do) on the block, if any.
-
- "K&R style" --- Named after Kernighan & Ritchie, because the
- examples in <K&R> are formatted this way. Also called "kernel
- style" because the UNIX kernel is written in it. The basic indent
- shown here is 8 spaces (or 1 tab) per level; 4 is occasionally seen
- but much less common.
-
- if (cond) {
- <body>
- }
-
- "Allman style" --- Named for Eric Allman, a Berkeley hacker who
- wrote a lot of the BSD utilities in it (it is sometimes called
- "BSD style"). Resembles normal indent style in Pascal and
- Algol. Basic indent per level shown here is 8 spaces, but 4 is
- just as common (esp. in C++ code).
-
- if (cond)
- {
- <body>
- }
-
- "Whitesmiths style" --- popularized by the examples that came
- with Whitesmiths C, an early commercial C compiler. Basic indent
- per level shown here is 8 spaces, but 4 is occasionally seen.
-
- if (cond)
- {
- <body>
- }
-
- "GNU style" --- Used throughout GNU EMACS and the Free Software
- Foundation code, and just about nowhere else. Indents are always 4
- spaces per level, with { and } "centered" between levels.
-
- if (cond)
- {
- <body>
- }
-
- What style one uses is very much a matter of personal choice, but
- one should be consistent within any one software package.
- Statistically, surveys have shown the Allman and Whitesmiths styles
- to be the most common, with about equal `mind share'. K&R used to
- be nearly universal, but is now much less common (the opening brace
- tends to get lost against the right paren of the guard part in an
- if or while, which is a Bad Thing).
-
- <infinite> adj. Consisting of a large number of objects; extreme.
- Used very loosely as in: "This program produces infinite
- garbage." "He is an infinite loser." This is an abuse of the
- word's mathematical meaning. The term "semi-infinite" denoting
- an immoderately large amount of some resource is also heard.
- "This compiler is taking a semi-infinite amount of time to
- optimize my program". See also <semi->.
-
- <infinity> n. 1. The largest value that can be represented in a
- particular type of variable (register, memory location, data type,
- whatever). 2. <minus infinity> The smallest such value. Note that
- this is different from <time t equals minus infinity>, which is
- closer to a mathematician's usage of infinity.
-
- <infant mortality> n. It is common lore among hackers that the chances
- of sudden hardware failure drop off exponentially with a machine's
- time since power-up (that is until the relatively distant time at
- which mechanical wear in I/O devices and thermal-cycling stress in
- components has accumulated enough for the machine to start going
- senile). Up to half of all chip-and-wire failures happen within a
- new system's first few weeks; such failures are often referred to
- as "infant mortality" problems (or, occasionally, as "sudden
- infant death syndrome").
-
- <insanely great> adj. [Mac community, from Steve Jobs; also BSD UNIX
- people via Bill Joy] Something so incredibly <elegant> that it is
- imaginable only to someone possessing the greatest of
- <hacker>-natures.
-
- <INTERCAL> /in't@r-kal/ [said by the authors to stand for "Compiler
- Language With No Pronounceable Acronym"] n. A computer language
- designed by Don Woods and James Lyon in 1972. INTERCAL is purposely
- different from all other computer languages in all ways but one; it
- is purely a written language, being totally unspeakable. An
- excerpt from the INTERCAL Reference Manual will make the style of
- the language clear. In most languages, if you wanted the variable
- A to have the value 65536, you would write something like
-
- LET A = 65536;
-
- The INTERCAL Reference Manual explains that "It is a well-known
- and oft-demonstrated fact that a person whose work is
- incomprehensible is held in high esteem. For example, if one were
- to state that the simplest way to store a value of 65536 in a
- 32-bit INTERCAL variable is:
-
- DO :1 <- #0$#256
-
- any sensible programmer would say that that was absurd. Since this
- is indeed the simplest method, the programmer would be made to look
- foolish in front of his boss, who would of course have happened to
- turn up, as bosses are wont to do. The effect would be no less
- devastating for the programmer having been correct." INTERCAL has
- many other peculiar features designed to make it even more
- unspeakable. The Woods/Lyons implementation was actually used by
- many (well, at least several) people at Princeton. The language
- has been recently re-implemented as C-INTERCAL and is consequently
- enjoying an unprecedented level of unpopularity; there is even an
- alt.lang.intercal newsgroup devoted to the study and ...
- appreciation of the language on USENET.
-
- <interesting> adj. In hacker parlance, this word is not simply
- synonymous with `intriguing', but has strong connotations of
- `annoying', or `difficult', or both. Hackers relish a
- challenge. Oppose <trivial>.
-
- <Internet address> n. An absolute network address of the form
- foo@bar.baz, where foo is a user name, bar is a <sitename>, and
- baz is a `domain' name, possibly including periods itself.
- Contrasts with <bang path>; see also <network, the> and
- <network address>. All Internet machines and most UUCP sites can
- now resolve these addresses, thanks to a large amount of
- behind-the-scenes magic and PD software written since 1980 or so.
- See also <bang path>.
-
- <interrupt> interj. 1. On a computer, an event which interrupts normal
- processing and temporarily diverts flow-of-control through an
- "interrupt handler" routine. See also <trap>. 2. A request for
- attention from a hacker. Often explicitly spoken. "Interrupt ---
- have you seen Joe recently?". See <priority interrupt>.
-
- <interrupt list, the> [MSDOS] n. The list of all known software
- interrupt calls (both documented and undocumented) for IBM PCs and
- compatibles maintained and made available for free redistribution
- by Ralf Brown (ralf@cs.cmu.edu). As of early 1991, it had grown to
- approximately 1 megabyte in length.
-
- <interrupts locked out> adj. When someone is ignoring you. In a
- restaurant, after several fruitless attempts to get the waitress's
- attention, a hacker might well observe that "She must have
- interrupts locked out." The synonym "interrupts disabled" is
- also common. Variations of this abound; "to have one's interrupt
- mask bit set" is also heard. See also <spl>.
-
- <iron> n. Hardware, especially older/larger hardware of <mainframe>
- class with big metal cabinets housing relatively low-density
- electronics (but also used of modern supercomputers). Often in the
- phrase <big iron>. Oppose <silicon>. See also <dinosaur>.
-
- <Iron Age> n. In the history of computing, 1961-1971 --- the formative
- era of commercial <mainframe> technology. These began with the
- delivery of the first PDP-1, coincided with the dominance of
- ferrite <core>, and ended with the introduction of the first
- commercial microprocessor (the Intel 4004) in 1971. See also
- <Stone Age>.
-
- <iron box> [UNIX/Internet] n. A special environment set up to trap a
- <cracker> logging in over remote or network connections long
- enough so he can be traced. May include a specially-gimmicked
- <shell> restricting the hacker's movements in unobvious ways, and
- `bait' files designed to keep him interested and logged on. See
- also <back door>, <firewall machine>, <Venus flytrap> and
- Clifford Stoll's account in `Cuckoo's Egg' of how he made and
- used one (see Appendix C).
-
- <ironmonger> [IBM] n. A hardware specialist. Derogatory. Compare
- <sandbender>, <polygon pusher>.
-
- <ITS> /ie-tee-ess/ n. Incompatible Time-Sharing System, an influential
- but highly idiosyncratic operating system written for PDP-10s at
- MIT and long used at the MIT AI lab; much AI-hacker slang derives
- from ITS folklore. After about 1982 most actual work was shifted
- to newer machines, with the remaining ITS boxes run essentially as
- a hobby and service to the hacker community. The shutdown of the
- lab's last ITS machine in May 1990 marked the end of an era and
- sent old-time hackers into mourning nationwide. The Royal
- Institute of Technology in Sweden is maintaining one `live' ITS
- site at its computer museum (right next to the only TOPS-10 system
- still on the Internet), so ITS is still alleged to hold the record
- for OS in longest continuous use. See Appendix A.
-
- <IWBNI> [acronym] It Would Be Nice If. No pronunciation, as this is
- never spoken, only written. Compare <WIBNI>.
-
- <IYFEG> [USENET] Abbreviation for `Insert Your Favorite Ethnic
- Group'. Used as a meta-name when telling racist jokes in email to
- avoid offending anyone.
-
- {= J =}
-
- <J. Random> /jay rand'm/ n. [generalized from <J. Random Hacker>,
- q.v.] Arbitrary; ordinary; any one; `any old'. "Would you let
- J. Random Loser marry your daughter?". <J. Random> is
- often prefixed to a noun to make a name out of it. It means
- roughly "some particular" or "any specific one". The most
- common uses are `J. Random Hacker, `J. Random Loser' and `J.
- Random Nerd' ("Should J. Random Loser be allowed to <gun> down
- other people?"), but it can be used just as an elaborate version
- of <random> in any sense.
-
- <J. Random Hacker> [MIT] /jay rand'm hak'r/ n. A mythical figure like
- the Unknown Soldier; the archetypal hacker nerd. See <random>,
- <Suzie COBOL>. This may originally have been inspired or
- influenced by `J. Fred Muggs', a show-biz chimpanzee whose name
- was a household word back in the days of the MIT Model Railroad
- Club.
-
- <jaggies> /jag'eez/ n. The `stairstep' effect observable when an edge
- (esp. a linear edge of slope far from a multiple of 45 degrees) is
- rendered on a pixel device (as opposed to a vector display).
-
- <JCL> [ex-IBM] 1. IBM's ultimately <rude> "Job Control Language".
- JCL was the script language used to control the execution of
- programs in IBM's batch systems. JCL had a very <fascist> syntax,
- and would, for example, <barf> if two spaces appeared where it
- expected one. Most programmers who were confronted with JCL would
- simply copy a working file (or card deck), changing the file names.
- Someone who actually understood and generated unique JCL was
- regarded with the mixed respect which one gives to someone who
- memorizes the phone book. 2. Any very <rude> software that a
- hacker is expected to use. "That's as bad as JCL." Often used
- without having experienced it, as is <COBOL>. See also <IBM>,
- <fear and loathing>.
-
- <JFCL> /jif'kl/ or /jaf'kl/ vt., obs. To cancel or annul something.
- "Why don't you jfcl that out?" The fastest do-nothing instruction
- on the PDP-10 happened to be JFCL, which stands for "Jump if Flag
- set and then CLear the flag"; this does something useful, but is a
- very fast no-operation if no flag is specified. Geoff Goodfellow,
- one of the jargon-1 coauthors, once had JFCL on the license plate
- of his BMW. Usage: rare except among old-time PDP-10 hackers.
-
- <jiffy> n. 1. The width of one tick of the system clock on the
- computer (see <tick>). Often 1 AC cycle time (1/60 second in the
- U.S. and Canada, 1/50 most other places) but more recently 1/100
- sec has become common. 2. Confusingly, the term is sometimes also
- used for a 1-millisecond <wall time> interval. "The swapper runs
- every six jiffies" means that the virtual memory management
- routine is executed once for every six ticks of the clock, or about
- ten times a second. 3. Indeterminate time from a few seconds to
- forever. "I'll do it in a jiffy" means certainly not now and
- possibly never. This is a bit contrary to the more widespread use
- of the word.
-
- <job security> n. When some piece of code is written in a
- particularly <obscure> fashion, and no good reason (such as time
- or space optimization) can be discovered, it is often said that the
- programmer was attempting to increase his job security. This sour
- joke seldom has to be said in full; if two hackers are looking over
- some code together and one points at a section and says `job
- security' the other one will generally just nod.
-
- <jock> n. 1. Programmer who is characterized by large and somewhat
- brute force programs. See <brute force>. 2. When modified by
- another noun, describes a specialist in some particular computing
- area. The compounds `compiler jock' and `systems jock' seem to be
- the best established examples of this.
-
- <joe code> /joh' kohd`/ [said to commemorate a notoriously bad
- coder named Joe at Lawrence Berkeley Laboratory] n. Badly written,
- possibly buggy source code. Correspondents wishing to remain
- anonymous have fingered a particular Joe and observed that usage
- has drifted slightly; they described his code as "overly <tense>
- and unmaintainable". "Perl may be a handy program, but if you
- look at the source, it's complete joe code."
-
- <JR[LN]> /jay ahr en/, /jay ahr el/ n. The names JRN and JRL were
- sometimes used as example names when discussing a kind of user ID
- used under <TOPS-10>; they were understood to be the initials of
- (fictitious) programmers named `J. Random Nerd' and `J. Random
- Loser' (see <J. Random>). For example, if one said "To log in,
- type log one comma jay are en" (that is, "log1,JRN"), the
- listener would have understood that he should use his own computer
- id in place of `JRN'.
-
- {= K =}
-
- <K> [from <kilo->] /kay/ n. A kilobyte. This is used both as a
- spoken word and a written suffix (like <meg> and <gig> for
- megabyte and gigabyte). Also written KB, MB, GB respectively (the
- formal SI prefix corresponding to KB would be kB, denoting
- 1000-byte units). See also <kilo->.
-
- <K&R> [Kernighan and Ritchie] n. Brian Kernighan & Dennis Ritchie's
- `The C Programming Language', esp. the classic and influential
- first edition (Prentice-Hall 1978, ISBN 0-113-110163-3). Also
- called the <White Book>. Syn. <Wite Book>, <Old Testament>.
- See also <New Testament>
-
- <kahuna> /k@-hoo'nuh/ [IBM, from the Hawaiian title for a shaman] n.
- Synonym for <wizard>, <guru>.
-
- <ken> /ken/ n. A flaming user. This noun was in use by the Software
- Support group at Symbolics because the two greatest flamers in the
- user community were both named Ken.
-
- <kgbvax> /kay-jee-bee-vaks/ n. See <kremvax>.
-
- <kill file> [USENET] n. Per-user file(s) used by some <USENET> reading
- programs to discard summarily (without presenting for reading)
- articles which match some particularly uninteresting (or unwanted)
- patterns of subject, author, or other header lines. Thus to "add
- a person (or subject) to one's kill file" is to arrange for that
- person to be ignored by your newsreader in future. By extension,
- it may be used for a decision to ignore the person or subject in
- other media.
-
- <killer micro> [popularized by Eugene Brooks] n. A
- microprocessor-based machine that infringes on mini, mainframe or
- supercomputer performance turf. Often heard in "No one will
- survive the attack of the killer micros!", the battle cry of the
- downsizers. Used esp. of RISC architectures.
-
- <killer poke> n. A recipe for inducing hardware damage on a machine
- via insertion of invalid values in a memory-mapped control
- register; used esp. of various fairly well-known tricks on MMU-less
- <bitty boxes> like the IBM PC and Commodore PET that can overload
- and trash analog electronics in the monitor. See also <HCF>.
-
- <kilo-> [from metric measure] prefix. May denote multiplication by
- 1024, the power of 2 closest to 1000, rather than by the usual
- 1000. The correct prefix for multiplication by 1000 is `k'; `K'
- has come to be used for multiplication by 1024. Similarly the
- higher metric prefixes denote multiplication by powers of 1024
- rather than of 1000: mega- for 1024 ^ 2 = 1,048,576, <giga-> for
- 1024 ^ 3 = 1,073,741,824, tera- meaning 1024 ^ 4 =
- 1,099,511,627,776, <peta-> meaning 1024 ^ 5 =
- 1,125,899,906,842,624, and <exa-> for 1024 ^ 6 =
- 1,152,921,504,606,846,976. The last two have not actually been
- observed, yet. Usage: the power-of-two sense is used especially
- with bytes, but also with anything else perceived to naturally come
- in units that are powers of 2.
-
- Confusion of 1000 and 1024, for example describing memory in units
- of 500K or 524K (see K) instead of 512K, is a sure sign of the
- <marketroid>.
-
- <KIPS> [acronym, by analogy with <MIPS> using <K>] n. Thousands of
- Instructions Per Second. Usage: rare.
-
- <kit> [USENET] n. A source software distribution which has been
- packaged in such a way that it can (theoretically) be unpacked and
- installed according to a series of steps using only standard UNIX
- tools, and entirely documented by some reasonable chain of references
- from the top-level <README>. The more general term
- <distribution> may imply that special tools or more stringent
- conditions on the host environment are required.
-
- <kluge> /klooj/ alt. kludge /kluhj/ [from the German "klug", clever]
- (/klooj/ is the original pronunciation, more common in the US;
- /kluhj/ is reported more common in England). n. 1. A Rube Goldberg
- (or Heath Robinson) device in hardware or software. (A long-ago
- Datamation article said: "An ill-assorted collection of poorly
- matching parts, forming a distressing whole.") 2. n. A clever
- programming trick intended to solve a particular nasty case in an
- expedient, if not clear, manner. Often used to repair bugs. Often
- involves <ad-hockery> and verges on being a <crock>. 3. Something
- that works for the wrong reason. 4. vt. To insert a kluge into a
- program. "I've kluged this routine to get around that weird bug,
- but there's probably a better way." Also "kluge up"; "I've
- kluged up this routine...,etc." . 5. <kluge around>: To avoid by
- inserting a kluge. 6. [WPI] A feature which is implemented in a
- <rude> manner.
-
- Note that a plurality of hackers pronounce this word /klooj/ but
- spell it incorrectly as `kludge'. Some observers consider this
- appropriate in view of its meaning.
-
- <KISS Principle> n. "Keep It Simple, Stupid". A maxim often
- invoked when discussing design to fend off <creeping featuritis>
- and control development complexity. Possibly related to the
- <marketroid> maxim on sales presentations, "Keep It Short and
- Simple".
-
- <Knights of the Lambda Calculus> n. A semi-mythical organization of
- wizardly LISP and Scheme hackers (the name refers to a mathematical
- formalism invented by Alonzo Church with which LISP is intimately
- connected). There is no enrollment list and the criteria for
- induction are unclear, but one well-known LISPer has been known to
- give out buttons and, in general, the *members* know who they
- are...
-
- <Knuth> [Donald Knuth's `The Art of Computer Programming'] n. The
- reference that answers all questions about data structures or
- algorithms. A safe answer when you do not know, as in "I think
- you can find that in Knuth." Contrast <literature, the>. See
- also <bible>.
-
- <kremvax> /krem-vaks/ [From the then large number of <USENET> <VAXen>
- with names of the form `foovax'] n. A fictitious USENET site at
- the Kremlin, announced on April 1, 1984, in a posting ostensibly
- from Soviet leader Konstantin Chernenko. The posting was actually
- forged by Piet Beertema as an April Fool's joke. Other sites
- mentioned in the hoax were moskvax and <kgbvax>, which now seems to
- be the one by which it is remembered. This was probably the
- funniest of the many April Fool's forgeries perpetrated on USENET
- (which has negligible security against them), because the notion
- that USENET might ever penetrate the Iron Curtain seemed so totally
- absurd at the time.
-
- In fact, it was only 6 years later that the first genuine site in
- Moscow, demos.su, joined USENET. Some readers needed convincing
- that it wasn't another prank. Vadim Antonov (avg@hq.demos.su),
- the major poster from Moscow up to at least the end of 1990, was
- quite aware of all this, referred to it frequently in his own
- postings, and at one point twitted some credulous readers by
- blandly `admitting' that he *was* a hoax! [Mr. Antonov, also
- contributed the Russian-language material for this File --- ESR]
-
- {= L =}
-
- <lace card> n. obs. A Hollerith card with all holes punched (also
- called a <whoopee card>). Card readers jammed when they got to
- one of these, as the resulting card had too little structural
- strength to avoid buckling inside the mechanism. Card punches
- could also jam trying to produce these things due to power-supply
- problems. When some practical joker fed a <lace card> through
- the reader you needed to clear the jam with a "card knife" --- which
- you used on the joker first.
-
- <language lawyer> n. A person, usually an experienced or senior
- software engineer, who is intimately familiar with many or most of
- the numerous syntactic and semantic restrictions (both useful and
- esoteric) applicable to one or more computer programming languages.
- Compare <wizard>, <legal>, <legalese>.
-
- <languages of choice> n. C and LISP. Essentially all hackers know one
- of these and most good ones are fluent in both. Smalltalk and
- Prolog are popular in small but influential communities. Assembler
- used to be a language of choice, but is generally no longer
- considered interesting or appropriate for anything but compiler
- code generation and a few time-critical uses in systems programs.
-
- There is also a rapidly dwindling category of older hackers with
- FORTRAN as their language of choice; they often prefer to be known
- as <real programmer>s, and other hackers consider them a bit odd.
- See `The Story of Mel, a Real Programmer' in Appendix A for
- another view of what constitutes a "real programmer".
-
- Most hackers tend to frown at languages like Pascal and Ada which
- don't give them the near-total freedom considered necessary for
- hacking (see <bondage-and-discipline language>) and to regard
- everything that's even remotely connected with <COBOL> or other
- traditional <card-walloper> languages as a total <loss>.
-
- <larval stage> n. Describes a period of monomaniacal concentration
- on coding apparently passed through by all fledgling hackers.
- Common symptoms include: the perpetration of more than one 36-hour
- <hacking run> in a given week, neglect of all other activities
- including usual basics like food and sex, and a chronic case of
- advanced bleary-eye. Can last from six months to two years, with
- the apparent median being around eighteen months. A few so
- afflicted never resume a more `normal' life, but the ordeal seems
- to be necessary to produce really wizardly (as opposed to merely
- competent) programmers. See also <wannabee>. A less protracted
- and intense version of larval stage (typically lasting about a
- month) may recur when learning a new <OS> or programming
- language.
-
- <lase> /layz/ vt. To print a given document via a laser printer. "OK,
- let's lase that sucker and see if all those graphics-macro calls
- did the right things."
-
- <laser chicken> n. Kung Pao Chicken, a standard Chinese dish
- containing chicken, peanuts, and hot red peppers in a spicy
- pepper-oil sauce. A few hackers call it "laser chicken" for
- two reasons; it can <zap> you just like a laser, and the
- pepper-oil sauce has a red color reminiscent of some laser beams.
-
- In a variation on this theme, it is reported that one group of
- Australian hackers have redesignated the common dish `lemon
- chicken' as "Chernobyl Chicken". The name is derived from the
- color of the dish, which is considered bright enough to glow in
- the dark (much like some of the fabled inhabitants of Chernobyl).
-
- <LDB> /l@d'd@b/ [from the PDP-10 instruction set] vt. To extract from
- the middle. This usage has been kept alive by Common LISP's
- function of the same name. See also <DPB>.
-
- <leaf site> n. A machine which merely originates and reads USENET
- new or mail, and does not relay any third-party traffic. Often
- uttered in a critical tone; when the ratio of leaf sites to
- backbone, rib and other relay sites gets too high, the network
- tends to develop bottlenecks. Compare <backbone site>, <rib
- site>.
-
- <leak> n. With qualifier, one of a class of resource-management bugs
- that occur when resources are not freed properly after operations
- on them are finished, leading to eventual exhaustion as new
- allocation requests come in. <memory leak> and <fd leak> have
- their own entries; one might also refer, say, to a `window handle
- leak' in a window system.
-
- <leaky heap> [Cambridge] n. Syn. <memory leak>.
-
- <legal> adj. Loosely used to mean `in accordance with all the
- relevant rules', esp. in connection with some set of constraints
- defined by software. Thus one very frequently hears constructions
- like `legal syntax', `legal input' etc. Hackers often model their
- work as a sort of game played with the environment in which the
- objective is to maneuver through the thicket of `natural laws' to
- achieve a desired objective. Their use of `legal' is flavored by
- this game-playing sense rather than the more conventional one
- having to do with courts and lawyers. Compare <language lawyer>,
- <legalese>.
-
- <legalese> n. Dense, pedantic verbiage in a language description,
- product specification or interface standard; text that seems
- designed to obfuscate and requires a <language lawyer> to
- <parse> it. While hackers are not afraid of information density
- and complexity in language (indeed, they rather enjoy both), they
- share a deep and abiding loathing for legalese; they associate it
- with deception, <suits>, and situations in which hackers
- generally get the short end of the stick.
-
- <LERP> /lerp/ vi.,n. Quasi-acronym for Linear Interpolation, used as a
- verb or noun for the operation. Ex. Bresenham's algorithm lerps
- incrementally between the two endpoints of the line.
-
- <lexer> /lek'sr/ n. Common hacker shorthand for "lexical analyzer",
- the input-tokenizing stage in the parser for a language. "Some C
- lexers get confused by the old-style compound ops like `=-'".
-
- <life> n. 1. A cellular-automata game invented by John Horton Conway,
- and first introduced publicly by Martin Gardner (Scientific
- American, October 1970). Many hackers pass through a stage of
- fascination with it, and hackers at various pDaces contributed
- heavily to the mathematical analysis of this game (most notably
- Bill Gosper at MIT; see <Gosperism>). When a hacker mentions
- `life', he is much more likely to mean this game than the
- magazine, the breakfast cereal, or the human state of existenae.
- 2. The opposite of <USENET>. As in <Get a life!>.
-
- <light pipe> n. Fiber optic cable. Oppose <copper>.
-
- <like kicking dead whales down the beach> adj. A slow and disgusting
- process. First popularized by a famous quote about the difficulty
- of getting work done under one of IBM's mainframe OSs. "Well, you
- *could* write a C compiler in COBOL, but it would be like
- kicking dead whales down the beach."
-
- <line eater, the> [USENET] n. 1. A bug in some now-obsolete versions
- of the netnews software used to eat up to 512 bytes of the article
- text. The bug was triggered by having the text of the article
- start wih a space or tab. This bug was quickly personified as a
- mythical creature called the "line eater", and postings often
- included a dummy line of "line eater food". Ironically, line
- eater food not preceded by whitespace wasn't actually eaten,
- since the bug was avoided; but if there <was> whitespace before
- it, then the line eater would eat the food <and> the beginning of
- the text which it was supposed to be protecting. The practice of
- "sacrificing to the line eater" continued for some time after
- the bug had been <nailed to the wall>, and is still humorously
- referred to. The bug itself is still (in mid-1990) occasionally
- reported to be lurking in some mail-to-netnews gateways. 2. See
- <NSA line eater>.
-
- <line starve> [MIT] 1. vi. To feed the paper through the terminal
- the wrong way by one line (most terminals can't do this!). On a
- display terminal, to move the cursor up to the previous line of the
- screen. Example: "To print X squared, you just output X, line
- starve, 2, line feed." (The line starve causes the 2 to appear on
- the line above the X, and the line feed gets back to the original
- line.) 2. n. A "character" (or character sequence) that causes a
- terminal to perform this action. Unlike "line feed", "line
- starve" is *not* standard ASCII terminology. Even among
- hackers it is considered a bit silly. 3. [proposed] A sequence
- like \c (used in System V echo, as well as nroff/troff) which
- suppresses a <newline> or other character(s) that would normally
- implicitly be emitted.
-
- <link> n. A network connection between two machines. Usage: "Is
- that link down again?"
-
- <link-dead> [popularized by MUD] adj. 1. A lost Telnet/MUD connection.
- v. 2. A deliberate act, with ulterior motives, to close a
- connection.
-
- <link farm> [UNIX] n. A directory tree that contains many links to
- files in another, master directory tree of files. Link farms save
- space when maintaining several nearly identical copies of the same
- source tree, e.g. when the only difference is
- architecture-dependent object files. Example use: "Let's freeze
- the source and then rebuild the FROBOZZ-3 and FROBOZZ-4 link
- farms." Link farms may also be used to get around restrictions on
- the number of -I arguments on older C preprocessors.
-
- <lint> [from UNIX's `lint(1)', named perhaps for the bits of
- fluff it picks from programs] 1. vt. To examine a program closely
- for style, language usage, and portability problems, esp. if in C,
- esp. if via use of automated analysis tools, most esp. if the UNIX
- utility `lint(1)' is used. This term used to be restricted to
- use of `lint(1)' itself but (judging by references on USENET)
- has become a shorthand for `desk-check' at some non-UNIX shops,
- even in some languages other than C. See also <delint>. 2. Excess
- verbiage in a document, as in "this draft has too much lint".
-
- <lion food> [IBM] n. Middle management or HQ staff (by extension,
- administrative drones in general). From an old joke about two lions
- who, escaping from the zoo, split up to increase their chances but
- agreed to meet after two months. When they do meet, one is skinny
- and the other overweight. The thin one says "How did you manage?
- I ate a human just onaineand they turned out a small army to chase
- me --- guns, nets, it was terrible. Since then I've been reduced
- to eating mice, insects, even grass." The fat one replies "Well,
- *I* hid near an IBM office and ate a manager a day. And
- nobody even noticed!"
-
- <LISP> [from "LISt Processing language", but mythically from
- "Lots of Irritating Superfluous Parentheses"] n. The name of
- AI's mother tongue, a language based on the ideas of 1)
- variable-length lists and trees as fundamental data types, and 2)
- the interpretation of code as data and vice-versa. Invented by
- John McCarthy at Stanford in the late 1950s, it is actually older
- than any other <HLL> still in use except FORTRAN. Accordingly,
- it has undergone considerable adaptive radiation over the years;
- modern variants (of which Scheme is perhaps the most successful)
- are quite different in detail from the original LISP 1.5 at
- Stanford. The hands-down favorite of a plurality of hackers until
- the early 1980s, LISP now shares the throne with <C>. See
- <languages of choice>.
-
- <listing> n. A physical paper printout (as opposed to on-screen
- display) of program source, or of the results (interspersed with
- error and status messages) of a compilation or assembly run. What
- one grovels over when performing a <desk check>. Both the term
- `listing' and the thing it describes are now much less common than
- formerly, as modern time-sharing operating systems and powerful
- interactive editors have made it advantageous for hackers to do
- effectively all of their work on-line.
-
- <literature, the> n. Used to answer a question that the hearer
- believes is <trivial>, as in "It's in the literature." Oppose
- <Knuth>, which has no connotation of triviality.
-
- <little-endian> adj. Describes a computer architecture in which,
- within a given 16- or 32-bit word, lower byte addresses have lower
- significance (the word is stored `little-end-first'). The PDP-11
- and VAX families of computers and Intel microprocessors and a lot
- of communications and networking hardware are little-endian. See
- <big-endian>, <middle-endian>, <NUXI problem>. The term is
- sometimes used to describe the ordering of units other than bytes;
- most frequently these are bits within a byte.
-
- <Live Free Or Die!> imp. 1. The state motto of New Hampshire, which
- used to be on its care license plates. 2. A slogan associated with
- UNIX in the romantic days when UNIX aficionados saw themselves as a
- tiny, beleaguered underground tilting against the windmills of
- industry. The "free" referred specifically to freedom from the
- <fascist> design philosophies and crufty misfeatures common on
- commercial operating systems. Armando Stettner, one of the early
- UNIX developers, used to give out fake license plates bearing this
- motto under a large UNIX, all in New Hampshire colors of green and
- white. These are now valued collector's items.
-
- <livelock> n. A situation in which some critical stage of a task is
- unable to finish because its clients perpetually create more work
- for it to do after they've been serviced but before it can clear.
- Differs from <deadlock> in that the process is not blocked or
- waiting for anything, but has a virtually infinite amount of work
- to do and accomplishes nothing.
-
- <liveware> n. Synonym for <wetware> Less common.
-
- <lobotomy> n. 1. What a hacker subjected to formal management
- training is said to have undergone. At IBM and elsewhere this term
- is used by both hackers and low-level management; the latter
- doubtless intend it as a joke. 2. The act of removing the
- processor from a microcomputer in order to replace or upgrade it.
- Some very cheap <clone> systems are sold in `lobotomized' form
- --- everything but the brain.
-
- <locked and loaded> [fr. military slang for an M-16 with magazine
- inserted and prepared for firing] adj. Said of a removable disk
- volume properly prepared for use --- that is, locked into the drive
- and with the heads loaded. Ironically, because their heads are
- `loaded' whenever the power is up, this is never used of a
- <Winchester>.
-
- <locked up> adj. Syn. for <hung>, <wedged>.
-
- <logic bomb> n. Code surreptitiously inserted in an application or OS
- which causes it to perform some destructive or
- security-compromising activity whenever specified conditions are
- met. Compare <back door>.
-
- <logical> [from the technical term "logical device", wherein a
- physical device is referred to by an arbitrary name] adj.
- Understood to have a meaning not necessarily corresponding to
- reality. E.g., if a person who has long held a certain post (e.g.,
- Les Earnest at SAIL) left and was replaced, the replacement would
- for a while be known as the "logical" Les Earnest. Compare
- <virtual>. This use of <logical> is an extension from its
- technical use in computer science. A program can be written to do
- input or output using a "logical device"; when the program is
- run, the user can specify which "physical" (actual) device to use
- for that logical device. For example, a program might write all
- its error messages to a logical device called ERROR; the user can
- then specify whether logical device ERROR should be associated to
- the terminal, a disk file, or the <bit bucket> (to throw the error
- messages away). Perhaps the word "logical" is used because even
- though a thing isn't the actual object in question, you can reason
- logically about the thing as if it were the actual object.
-
- At Stanford, `logical' compass directions denoted a coordinate
- system in which "logical north" is toward San Francisco,
- "logical west" is toward the ocean, etc., even though logical
- north varies between physical (true) north near San Francisco and
- physical west near San Jose. (The best rule of thumb here is that
- El Camino Real by definition always runs logical north-and-south.)
- In giving directions, one might say, "To get to Rincon Tarasco
- restaurant, get onto El Camino Bignum going logical north." Using
- the word `logical' helps to prevent the recipient from worrying
- about that the fact that the sun is setting almost directly in
- front of him. The concept is reinforced by North American highways
- which are almost, but not quite, consistently labelled with logical
- rather than physical directions. A similar situation exists at
- MIT. Route 128 (famous for the electronics industries that have
- grown up along it) is a three-quarters circle surrounding Boston at
- a radius of ten miles, terminating at the coastline at each end.
- It would be most precise to describe the two directions along this
- highway as being `clockwise' and `counterclockwise', but the road
- signs all say `north' and `south', respectively. A hacker would
- describe these directions as `logical north' and `logical south',
- to indicate that they are conventional directions not corresponding
- to the usual convention for those words. (If you went logical
- south along the entire length of route 128, you would start out
- going northwest, curve around to the south, and finish headed due
- east!)
-
- <loop through> vt. To process each element of a list of things. "Hold
- on, I've got to loop through my paper mail." Derives from the
- computer-language notion of an iterative loop; compare <cdr down>
- (which is less common among C and UNIX programmers). ITS hackers
- used to say "IRP through" after an obscure pseudo-op in the
- MIDAS PDP-10 assembler.
-
- <lord high fixer> [primarily British, prob. fr. Gilbert & Sullivan's
- `lord high executioner'] n. The person in an organization who
- knows the most about some aspect of a system. See <wizard>.
-
- <lose> [from MIT jargon] vi. 1. To fail. A program loses when it
- encounters an exceptional condition or fails to work in the
- expected manner. 2. To be exceptionally unesthetic. 3. Of people,
- to be obnoxious or unusually stupid (as opposed to ignorant). 4.
- <deserves to lose>: vi. Said of someone who willfully does the
- <wrong thing>; humorously, if one uses a feature known to be
- <marginal>. What is meant is that one deserves the consequences
- of one's <losing> actions. "Boy, anyone who tries to use
- <mess-dos> deserves to lose!" (ITS fans used to say this of
- UNIX; many still do) See also <screw>, <chomp>, <bagbiter>.
- 5. n. Refers to something which is <losing>, especially in the
- phrases "That's a lose!" or "What a lose!".
-
- <lose lose> interj. A reply or comment on an undesirable situation.
- "I accidentally deleted all my files!" "Lose lose."
-
- <loser> n. An unexpectedly bad situation, program, programmer, or
- person. Someone who habitually loses (even winners can lose
- occasionally). Someone who knows not and knows not that he knows
- not. Emphatic forms are "real loser", "total loser", and
- "complete loser" (but not "moby loser", which would be a
- contradiction in terms). See <luser>.
-
- <losing> adj. Said of anything which is or causes a <lose>.
-
- <loss> n. Something (not a person) which loses; a situation in which
- something is losing. Emphatic forms include "moby loss" "total
- loss", "complete loss". Common interjections are "What a loss!"
- and "What a moby loss!" Compare <lossage>.
-
- <lossage> /los'@j/ n. The result of a bug or malfunction. This is a
- collective noun. "What a loss!" and "What lossage!" are nearly
- synonymous remarks. The former is slightly more particular to the
- speaker's present circumstances while the latter implies a
- continuing lose of which the speaker is presently victim. Thus
- (for example) a temporary hardware failure is a loss, but bugs in
- an important tool (like a compiler) are serious lossage.
-
- <lost in the underflow> adj. Too small to be worth considering;
- more specifically, small beyond the limits of accuracy or
- measurement. This is a reference to a condition ╨
- "floating underflow" that can occur when a floating-point
- arithmetic processor tries to handle quantities smaller than its
- limit of accuracy. It is also a pun on `undertow' (a kind of fast,
- cold, current that sometimes runs just outshore of a beach and can
- be dangerous to swimmers). "Well, sure, photon pressure from the
- stadium lights alters the path of a thrown baseball, but that
- effect gets lost in the underflow." See also <overflow bit>.
-
- <lots of MIPS but no I/O> adj. Used to describe a person who is
- technically brilliant but can't seem to communicate with human
- beings effectively. Technically it describes a machine which has
- lots of processing power but is <bottlenecked> on I/O.
-
- <LPT> /lip'it/ [ITS] n. Line printer, of course. Rare under UNIX,
- commoner in hackers with MS-DOS or CP/M background (the printer
- device is called LPT: on those systems, which like ITS were
- strongly influenced by early DEC conventions).
-
- <lurker> n. One of the `silent majority' in a <USENET> or BBS
- newsgroup; one who posts occasionally or not at all but is known to
- read the group regularly. Often in "the lurkers", the hypothetical
- audience for the group's <flamage>-emitting regulars.
-
- <lunatic fringe> [IBM] n. Customers who can be relied upon to accept
- release 1 versions of software.
-
- <luser> /loo'zr/ n. A <user> who is probably also a <loser>.
- (<luser> and <loser> are pronounced identically.) This word was
- coined about 1975 at MIT. Under ITS, when you first walked up to a
- terminal at MIT and typed Control-Z to get the computer's
- attention, it prints out some status information, including how
- many people are already using the computer; it might print "14
- users", for example. Someone thought it would be a great joke to
- patch the system to print "14 losers" instead. There ensued a
- great controversy, as some of the users didn't particularly want to
- be called losers to their faces every time they used the computer.
- For a while several hackers struggled covertly, each changing the
- message behind the back of the others; any time you logged into the
- computer it was even money whether it would say "users" or
- "losers". Finally, someone tried the compromise `lusers', and
- it stuck. Later one of the ITS machines supported `luser' as a
- request-for-help command. ITS died in early 1990; the usage lives
- on, however, and the term `luser' is often seen in program
- comments.
-
- {= M =}
-
- <M> [from <mega->] /kay/ n. A megabyte (1024 bytes). Also
- written MB (this conflicts with use of M by scientists, under
- which MB would denote 1000-byte units). See also <kilo->.
-
- <macdink> /mak'dink/ [from the Apple Macintosh, which is said to
- encourage such behavior] vt. To make many incremental and
- unnecessary cosmetic changes to a program or file. Frequently the
- subject of the macdinking would be better off without them. Ex:
- "When I left at 11pm last night, he was still macdinking the
- slides for his presentation."
-
- <Macintrash> /mak'in-trash`/ The Apple Macintosh, as described by a
- hacker who doesn't appreciate being kept away from the *real
- computer* by the interface. See also <WIMP environment>,
- <drool-proof paper>, <user-friendly>.
-
- <macro> /mak'roh/ n. A name (possibly followed by a formal <arg>
- list) which is equated to a text expression to which it is to be
- expanded (possibly with substitution of actual arguments) by a
- language translator. This definition can be found in any technical
- dictionary; what those won't tell you is how the hackish
- connotations of the term have changed over time. The term `macro'
- originated in early assemblers, which encouraged use of macros as a
- structuring and information-hiding device. During the early 70s
- macro assemblers became ubiquitous and sometimes quite as powerful
- and expensive as HLLs, only to fall from favor as improving
- compiler technology marginalized assembler programming (see
- <languages of choice>). Nowadays the term is most often used in
- connection with the C preprocessor, LISP, or one of several
- special-purpose languages built around a macro-expansion facility
- (such as TeX or UNIX's nroff, troff and pic suite). Indeed, the
- meaning has drifted enough that the collective `macros' is now
- sometimes used for code in any special-purpose application-control
- language (whether or not the language is actually translated by
- text expansion) as well as other `expansions' such as the `keyboard
- macros' supported in some text editors (and PC TSR keyboard
- enhancers).
-
- <macro-> pref. Large. Opposite of <micro->. In the mainstream and
- among other technical cultures (for example, medical people) this
- competes with the prefix <mega->, but hackers tend to restrict
- the latter to quantification.
-
- <machoflops> /mach'oh-flops/ [pun on "megaflops", a coinage for
- `millions of floating-point operations per second'] n. Refers to
- artificially inflated performance figures often quoted by computer
- manufacturers. Real applications are lucky to get half the quoted
- speed. See <Your mileage may vary.>, See <benchmark>.
-
- <macrology> /mak-ro'l@-jee/ n. Set of usually complex or crufty
- macros, e.g. as part of a large system written in LISP, <TECO> or
- (less commonly) assembler. Sometimes studying the macrology of a
- system is not unlike archeology, <ecology> and <theology>,
- hence the sound-alike construction.
-
- <macrotape> /ma'kroh-tayp/ n. An industry standard reel of tape, as
- opposed to a <microtape>.
-
- <magic> adj. 1. As yet unexplained, or too complicated to explain;
- compare <automagically> and (Arthur C.) Clarke's Third Law: "Any
- sufficiently advanced technology is indistinguishable from magic".
- "TTY echoing is controlled by a large number of magic bits."
- "This routine magically computes the parity of an eight-bit byte
- in three instructions." 2. Characteristic of something that works
- but no one really understands why. 3. [Stanford] A feature not
- generally publicized which allows something otherwise impossible,
- or a feature formerly in that category but now unveiled. Example:
- The keyboard commands which override the screen-hiding features.
-
- <magic cookie> [UNIX] n. 1. Something passed between routines or
- programs that enables the receiver to perform some operation; a
- capability ticket or opaque identifier. Especially used of small
- data objects which contain data encoded in a strange or
- intrinsically machine-dependent way. For example, on non-UNIX OSs
- with a non-byte-stream model of files, the result of
- `ftell(3)' may be a magic cookie rather than a byte offset;
- it can be passed to `fseek(3)' but not operated on in any
- meaningful way. The phrase "It hands you a magic cookie" means
- it returns a result whose contents are not defined but which can be
- handed back to the same program later to refer back to this
- transaction. 2. An in-band code for changing graphic rendition
- (i.e. inverse video or underlining) or performing other control
- functions. Some older terminals would leave a blank on the screen
- corresponding to mode-change cookies; this was also called a
- <glitch>. See also <cookie>.
-
- <magic number> [UNIX/C] n. 1. Special data located at the beginning of
- a binary data file to indicate its type to a utility. Under UNIX
- the system and various applications programs (especially the
- linker) distinguish between types of executable by looking for a
- magic number. Only a <wizard> knows the magic to create magic
- numbers. How do you create a magic number that nobody else is
- using? Simple --- you pick one at random. See? It's magic! 2.
- In source code, some non-obvious constant whose value is
- significant to the operation of a program and which is inserted
- inconspicuously in line, rather than expanded in by a symbol set by
- a commented #define. Magic numbers in this sense are bad style.
-
- <magic smoke> n. A notional substance trapped inside IC packages that
- enables them to function (also called "blue smoke"). Its
- existence is demonstrated by what happens when a chip burns up ---
- the magic smoke gets let out, so it doesn't work any more. See
- <smoke test>.
-
- <mailing list> n. (often shortened to "list") 1. An <email>
- address which is an alias for many other email addresses. 2. The
- people who receive your email when you send it to such and address.
-
- Mailing lists are one of the primary forms of hacker interaction,
- along with <USENET>. They predate USENET, and originated with the
- first UUCP and ARPANet connections. They are often used for
- private information-sharing on topics that would be too specialized
- for or inappropriate in public USENET groups. While some of these
- maintain purely technical content (such as the Internet Engineering
- Task Force mailing list), others (like the `sf-lovers' list
- maintained for many years by Saul Jaffe) are recreational, and
- others are purely social. Perhaps the most infamous of the social
- lists was the eccentric `bandykin' distribution; its latter-day
- progeny, `lectroids' and `tanstaafl' still include a number of the
- oddest and most interesting people in hackerdom.
-
- Mailing lists are easy to create and (unlike USENET) don't tie up a
- significant amount of machine resources. Thus, they are often
- created temporarily by working groups who can collaborate on a
- project without ever needing to meet face-to-face. Much of the
- material in this book was criticized and polished on just such a
- mailing list (called `jargon-friends') which included all the
- cauthors of the original `The Hacker's Dictionary'.
-
- <main loop> n. Software tools are often written to perform some
- action repeatedly on whatever input is handed to them, terminating
- when there is no more input or they are explicitly told to go away.
- In such programs, the loop that gets and processes input is called
- the "main loop". See also <driver>.
-
- <mainframe> n. This term originally referred to the central
- processor unit cabinet or `main frame' of a room-filling <Stone
- Age> batch machine. After the emergence of smaller `minicomputer'
- designs in the early Seventies, the traditional <big iron> machines
- were described as `mainframe computers' and eventually just as mainframes.
- The term carries the implication of a machine designed for batch
- rather than interactive use, though possibly with an interactive
- timesharing operating system retrofitted onto it; it is especially
- used of machines built by IBM, Sperry Univac, Unisys and the other
- great megatheria surviving from computing's Pleistocene.
-
- Outside the tiny market for specialized number-crunching
- supercomputers (see <cray>) it is common wisdom among hackers
- that the mainframe architectural tradition is essentially dead now,
- swamped by the huge advances in IC technology and `personal'
- lower-cost computing. As of 1991 corporate America hasn't quite
- figured this out yet, though the wave of failures, takeovers and
- mergers among traditional mainframe makers are certainly straws in
- the wind. See also <dinosaur>.
-
- <management> n. 1. Corporate power elites distinguished primarily by
- their distance from actual productive work and their chronic
- failure to manage (see also <suit>). Spoken derisively, as in
- "*Management* decided that..." 2. Mythically, a vast
- bureaucracy responsible for all the world's minor irritations.
- Hackers' satirical public notices are often signed "The Mgmt".
-
- <manged> /mahnjed/ [probably from the French manger, to eat].
- Refers to anything that is mangled or damaged, usually beyond
- repair. "The disk was manged after the electrical storm."
-
- <mangle> vt. Used similarly to <mung> or <scribble>, but more violent
- in its connotations; something that is mangled has been
- irreversibly and totally trashed.
-
- <mangler> [DEC] n. A manager. Compare <mango>; see also
- <management>. Note that <system mangler> is somwhat different
- in connotation.
-
- <mango> /mang'go/ [orig. in-house slang at Symbolics] n. A manager.
- Compare <mango>. See also <devo> and <doco>.
-
- <marginal> adj. 1. Extremely small. "A marginal increase in core can
- decrease <GC> time drastically." In everyday terms, this means
- that it's a lot easier to clean off your desk if you have a spare
- place to put some of the junk while you sort through it. 2. Of
- extremely small merit. "This proposed new feature seems rather
- marginal to me." 3. Of extremely small probability of winning.
- "The power supply was rather marginal anyway; no wonder it
- fried." 4. <marginally>: adv. Slightly. "The ravs here are
- only marginally better than at Small Eating Place." See <epsilon>.
- 5. <marginal hacks>: n. Margaret Jacks Hall, a building into which
- the Stanford AI Lab was moved near the beginning of the '80s.
-
- <marketroid> /mar'k@-troyd/ alt. <marketing slime>, <marketing
- droid>, <marketeer> n. Member of a company's marketing department,
- esp. one who promises users that the next version of a product
- will have features which are unplanned, extremely difficult to
- implement, and/or violate the laws of physics; and/or one who
- describes existing features (and misfeatures) in ebullient,
- buzzword-laden adspeak. Derogatory. Used by techies.
-
- <martian> n. A packet sent on a TCP/IP network with a source address
- of the test loopback interface (127.0.0.1). As in "The domain
- server is getting lots of packets from Mars. Does that gateway
- have a martian filter?"
-
- <massage> vt. Vague term used to describe `smooth' transformations of
- a data set into a more useful form, esp. transformations which do
- not lose information. Connotes less pain than <munch> or <crunch>.
- "He wrote a program that massages X bitmap files into GIF
- format." Compare <slurp>.
-
- <math-out> [poss. fr. `white-out'] n. A paper or presentation so
- encrusted with mathematical or other formal notation as to be
- incomprehensible. This may be a device for conaealing the fact
- that it is actually <content-free>. See also <numbers>,
- <social science number>.
-
- <Matrix> [Fidonet] n. What the Opus BBS software and sysops call
- <Fidonet>.
-
- <Mbogo, Dr. Fred> [Stanford] n. The archetypal man you don't want to
- see about a problem, esp. an incompetent professional; a shyster.
- Usage: "Do you know a good eye doctor?" "Sure, try Mbogo Eye
- Care and Professional Dry Cleaning." The name comes from synergy
- between <bogus> and the original Dr. Mbogo, a witch doctor who
- was Gomez Addams' physician on the old `Addams Family' TV show.
-
- <meatware> n. Synonym for <wetware>. Less common.
-
- <meg> /meg/ n. A megabyte; 1024K. See <K>.
-
- <mega-> /me'g@/ pref. Multiplier, 10 ^ 6 or 2 ^ 10. See <kilo->.
-
- <megapenny> /meg'@-pen'ee/ n. $10,000 (1 cent * 10e6). Used
- semi-humorously as a unit in comparing computer cost/performance
- figures.
-
- <MEGO> /me'goh/ or /mee'goh/ [My Eyes Glaze Over, often Mine Eyes Glazeth
- Over, attributed to the futurologist Herman Kahn] Also "MEGO
- factor". 1. Handwaving intended to confuse the listener and
- hopefully induaineagreement because the listener does not want to
- admit to not understanding what is going on. MEGO is usually
- directed at senior management by engineers and contains a high
- proportion of <TLA>s. 2. excl. An appropriate response to MEGO
- tactics.
-
- <meltdown, network> n. A state of complete network overload; the
- network equivalent of <thrash>ing. See also <broadcast storm>.
-
- <meme> /meem/ [coined on analogy with "gene" by Richard Dawkins] n. An
- idea considered as a <replicator>. Used esp. in the phrase "meme
- complex" denoting a group of mutually supporting memes which form
- an organized belief system, such as a religion. This dictionary is
- a vector of the "hacker subculture" meme complex; each entry
- might be considered a meme. However, "meme" is often misused to
- mean "meme complex". Use of the term connotes acceptance of the
- idea that in humans (and presumably other tool-and language-using
- sophonts) cultural evolution by selection of adaptive ideas has
- superseded biological evolution by selection of hereditary traits.
- Hackers find this idea congenial for tolerably obvious reasons.
-
- <meme plague> n. The spread of a successful but pernicious <meme>,
- esp. one which `parasitizes' the victims into giving their all to
- propagate it. Astrology, BASIC, and the other guy's religion are
- often considered to be examples. This usage is given point by the
- historical fact that `joiner' ideologies like Naziism or various
- forms of millenarian Christianity have exhibited plague-like cycles
- of exponential growth followed by collapse to small reservoir
- populations.
-
- <memetics> /m@-met-iks/ [from <meme>] The study of memes. As of 1990,
- this is still an extremely informal and speculative endeavor,
- though the first steps towards at least statistical rigor have been
- made by H. Keith Henson and others. Memetics is a popular topic
- among hackers, who like to see themselves as the architects of the
- new information ecologies in which memes live and replicate.
-
- <memory leak> [C/UNIX programmers] n. An error in a program's
- dynamic-store allocation logic that causes it to fail to reclaim
- discarded memory, leading to attempted hogging of main store and
- eventual collapse due to memory exhaustion. Also (esp. at CMU)
- called <core leak>. See <aliasing bug>, <fandango on core>, <smash
- the stack>, <precedence lossage>, <overrun screw>, <leaky heap>.
-
- <menuitis> /men`yoo-ie'tis/ n. Notional disease suffered by software
- with an obsessively simple-minded menu interfaaineand no escape.
- Hackers find this intensely irritating and much prefer the
- flexibility of command-line or language-style interfaces,
- especially those customizable via macros or a special-purpose
- language in which one can encode useful hacks. See
- <user-obsequious>, <drool-proof paper>, <WIMP environment>.
-
- <mess-dos> /mes-dos/ [UNIX hackers] n. Derisory term for MS-DOS. Often
- followed by the ritual expurgation "Just Say No!". See MS-DOS.
- Most hackers (even many MS-DOS hackers) loathe MS-DOS for its
- single-tasking nature, its limits on application size, its nasty
- primitive interfaae, and its ties to IBMness (see <fear and
- loathing>). Also "mess-loss", "messy-dos", "mess-dog",
- "mess-dross" and various combinations thereof.
-
- <meta> /me't@/ or /may't@/ or (Commonwealth) /mee't@/ [from
- analytic philosophy] adj. One level of description up. Thus, a
- meta-syntactic variable is a variable in notation used to describe
- syntax and meta-language is language used to describe language.
- This is difficult to explain out of context, but much hacker humor
- turns on deliberate confusion between meta-levels. See HUMOR,
- HACKER.
-
- <meta bit> /meta@ bit/ or /mayt'@ bit/ n. Bit 8 of an 8-bit
- character, on in values 128-255. Also called <high bit> or <alt
- bit>. Some terminals and consoles (especially those designed for
- LISP traditions) have a META shift key. Others (including,
- *mirabile dictu*, keyboards on IBM PC-class machines) have an ALT
- key. See also <bucky bits>.
-
- <mickey> n. The resolution unit of mouse movement. In <OS/2>
- there is a system call `MouGetNumMickeys()'. It has been
- suggested that the "disney" will become a benchmark unit for
- animation graphics performance.
-
- <micro-> pref. 1. Very small (this is the root of its use, as a
- quantifier prefix meaning `multiply by `10 ^ -6''). Nether of
- these uses is peculiar to hackers, but hackers tend to fling them
- both around rather more freely than is countenanced in standard
- English. It is recorded, for example, that one CS professor used
- to characterize the standard length of his lectures as a
- microcentury --- that is, about 52.6 minutes (see also
- <nanoacre>). 2. Personal or human-scale --- that is, capable of
- being maintained or comprehended or manipulated by one human being.
- This sense is generalized from "microcomputer", and esp. used
- in contrast with "macro-" (Greek prefix meaning large). 3.
- Local as opposed to global (<macro->). Thus a hacker might say,
- for example, that buying a smaller car to reduce pollution only
- solves a microproblem; the macroproblem of getting to work might be
- better solved by using transit, moving to within walking distance,
- or telecommuting.
-
- <microfloppies> n. 3-1/2 inch floppies, as opposed to 5-1/4 <vanilla>
- or mini-floppies and the now-obsolescent 8-inch variety. This term
- may be headed for obsolescenaineas 5-1/4 inchers pass out of use,
- only to be revived if anybody floats a sub-3-inch floppy standard.
- See <stiffy>.
-
- <microtape> n. Occasionally used to mean a DECtape, as opposed to a
- <macrotape>. A DECtape is a small reel of magnetic tape about four
- inches in diameter and an inch deep. Unlike normal drivers for
- standard magnetic tapes, microtape drivers allow random access
- to the data. In their heyday they were used in pretty much the
- same ways one would now use a floppy disk: as a small, portable way
- to save and transport files and programs. Apparently the term
- "microtape" was actually the official term used within DEC for
- these tapes until someone consed up the word "DECtape", which of
- course sounded sexier to the <marketroid> types.
-
- <middle-endian> adj. Not <big-endian> or <little-endian>. Used of
- byte orders like 3-4-1-2 occasionally found in the packed-decimal
- formats of minicomputer manufacturers who shall remain nameless.
-
- <millilampson> /mil'i-lamp`sn/ n. How fast people can talk. Most
- people run about 200 millilampsons. Butler Lampson (a CS theorist
- and systems implementor highly regarded among hackers) goes at
- 1000. A few people speak faster.
-
- <MIPS> /mips/ [acronym] n. 1. A measure of computing speed;
- formally, "Million Instructions Per Second"; often rendered
- by hackers as "Meaningless Indication of Processor Speed". This
- joke expresses a nearly universal attitude about the value of
- <benchmark> claims, said attitude being one of the great cultural
- divides between hackers and <marketroid>s. 2. The corporate name
- of a particular RISC-chip company; among other things, they
- designed the processor chips used in DEC's 3100 workstation series.
-
- <misbug> /mis-buhg/ [MIT] n. An unintended property of a program
- that turns out to be useful; something that should have been a
- <bug> but turns out to be a <feature>. Usage: rare.
-
- <misfeature> /mis-fee'chr/ n. A feature which eventually screws
- someone, possibly because it is not adequate for a new situation
- which has evolved. It is not the same as a bug because fixing it
- involves a gross philosophical change to the structure of the
- system involved. A misfeature is different from a simple
- unforeseen side effect; the term implies that the misfeature was
- actually carefully planned to be that way, but future consequences
- or circumstances just weren't predicted accurately. This is
- different from just not having thought ahead about it at all.
- Often a former feature becomes a misfeature because a tradeoff was
- made whose parameters subsequently changed (possibly only in the
- judgment of the implementors). "Well, yeah, it's kind of a
- misfeature that file names are limited to six characters, but the
- original implementors wanted to save directory space and we're
- stuck with it for now."
-
- <miswart> /mis-wort/ [from <wart> by analogy with <misbug>] n.
- A <feature> which appears to be a <wart> but has been
- determined to be the <Right Thing>. For example, in some versions
- of the <EMACS> text editor, the `transpose characters' command
- exchanges the two characters on either side of the cursor on the
- screen, *except* when the cursor is at the end of a line, in
- which case the two characters before the cursor are exchanged.
- While this behavior is perhaps surprising, and certainly
- inconsistent, it has been found through extensive experimentation
- to be what most users want. This feature is a miswart.
-
- <Missed'em-five> n. Pejorative hackerism for AT&T System V UNIX,
- generally used by <BSD> partisans in a bigoted mood. See <software
- bloat>, <Berzerkely>.
-
- <mixed case> adj. Of source code, commentary, system messages, etc.,
- not in all upper case, and therefore easy to read and understand.
- Used in opposition to older designs that are case-insensitive and
- use an all-caps character set.
-
- <moby> /moh'bee/ [MIT; seems to have been in use among model
- railroad fans years ago. Derived from Melville's `Moby Dick' (some
- say from `Moby Pickle').] 1. adj. Large, immense, complex,
- impressive. "A Saturn V rocket is a truly moby frob." "Some
- MIT undergrads pulled off a moby hack at the Harvard-Yale game."
- (see Appendix A). 2. n. obs. The maximum address space of a
- machine (see below). For a 68000 or VAX or most modern 32-bit
- architectures, it is 4294967296 8-bit bytes. 3. A title of
- address (never of third-person reference), usually used to show
- admiration, respect, and/or friendliness to a competent hacker.
- "Greetings, moby Dave. How's that address-book thing for the Mac
- going?" 4. adj. In backgammon, doubles on the dice, as in
- "moby sixes", "moby ones", etc. Compare this with
- <bignum> (sense #2): double sixes are both bignums and moby
- sixes, but moby ones are not bignums (the use of "moby" to
- describe double ones is sarcastic). "moby foo", "moby
- win", "moby loss": standard emphatic forms. "foby moo": a
- spoonerism due to Greenblatt.
-
- This term entered hackerdom with the Fabritek 256K moby memory of
- the MIT-AI machine. Thus, a moby is classically, 256K 36-bit words,
- the size of a PDP-10 moby (it has two). Back when address
- registers were narrow, the term was more generally useful; because
- when a computer had virtual memory mapping it might actually
- have more physical memory attached to it than any one program could
- access directly. One could then say "This computer has six
- mobies" to mean that the ratio of physical memory to address space
- is six, without having to say specifically how much memory there
- actually is. That in turn implied that the computer could
- timeshare six `full-sized' programs without having to swap
- programs between memory and disk.
-
- Nowadays the low cost of processor logic means that registers are
- typically wider than the most memory you can cram onto a machine,
- so most systems have much *less* than 1 theoretical `native'
- moby of core. Also, more modern memory-management techniques make
- the `moby count' less significant. However, there is one series of
- popular chips for which the term could stand to be revived --- the
- Intel 8088 and 80286 with their incredibly brain-damaged
- segmented-memory design. On these, a `moby' would be the
- 1-megabyte address span of a paragraph-plus-offset pair.
-
- <mod> vt.,n. 1. Short for "modify" or <modification>. Very
- commonly used --- in fact these latter terms are considered markers
- that one is being formal. The plural `mods' is used esp. with
- reference to bug fixes or minor design changes in hardware or
- software, most esp. with respect to patch sets or <diff>s.
-
- <mode> n. A general state, usually used with an adjective describing
- the state. Use of the word "mode" rather than "state" implies
- that the state is extended over time, and probably also that some
- activity characteristic of that state is being carried out. "No
- time to hack; I'm in thesis mode." Usage: in its jargon sense,
- `mode' is most often said of people, though it is sometimes
- applied to programs and inanimate objects. "The E editor normally
- uses a display terminal, but if you're on a TTY it will switch to
- non-display mode." This term is normally used in a technical sense
- to describe the state of a program. Extended usage --- for
- example, to describe people --- is definitely slang. In
- particular, see <hack mode>, <day mode>, <night mode>, <demo mode>,
- <fireworks mode> and <yoyo mode>; also <talk mode>.
-
- One also often hears the verbs "enable" and "disable" used in
- connection with slang modes. Thus, for example, a sillier way of
- saying "I'm going to crash" is "I'm going to enable crash mode
- now." One might also hear a request to "disable flame mode,
- please".
-
- <mode bit> n. A <flag>, usually in hardware, that selects between
- two (usually quite different) modes of operation. The connotations
- are different from <flag> bit in that mode bits are mainly
- written during a boot or set-up phase, are seldom read, and seldom
- change over the lifetime of an ordinary program. The classic
- example was a the EBCDIC -vs.-ASCII bit 12 of the Program Status
- Word of the IBM 360.
-
- <modulo> /mod'y@-low/ prep. Except for. From mathematical
- terminology: one can consider saying that 4 = 22 except for the
- 9s (4=22 mod 9) (the precise meaning is a bit more complicated,
- but that's the idea). "Well, LISP seems to work okay now, modulo
- that <GC> bug." "I feel fine today modulo a slight headache."
-
- <Mongolian Hordes technique> n. Development by <gang bang>;
- compare the Sixties counterculture expression `Mongolian
- clusterfuck' for a public orgy. Implies that large numbers of
- inexperienced programmers are being put on a job better performed
- by a few skilled ones.
-
- <monkey up> vt. To hack together hardware for a particular task,
- especially a one-shot job. Connotes an extremely <crufty> and
- consciously temporary solution.
-
- <monstrosity> 1. n. A ridiculously <elephantine> program or system,
- esp. one which is buggy or only marginally functional. 2. The
- quality of being monstrous (see `Peculiar nouns' in the discussion
- of jargonification). See also <baroque>.
-
- <Moof> /moof/ [MAC users] n. The Moof or `dogcow' is a
- semi-legendary creature that lurks in the depths of the Macintosh
- Technical Notes hypercard stack V3.1; specifically, the full story
- of the dogcow is told in technical note #31 (the particular Moof
- illustrated is properly named `Clarus'). Option-shift-click will
- cause it to emit a characteristic `Moof!' or `!fooM' sound.
- *Getting* to tech note #31 is the hard part; to discover how
- to do that, one must needs examine the stack script with a hackerly
- eye. Clue: <rot13> is involved. A dogcow also said to appear if
- you choose `Page Setup...' with a LaserWriter selected and click on
- the `Options' button.
-
- <Moore's Law> /morz law/ prov. The observation that the logic
- density of silicon integrated circuits has closely followed the
- curve (bits per inch ^ 2) = 2 ^ (n - 1962); that is, the amount of
- information storable in one square inch of silicon has roughly
- doubled yearly every year since the technology was invented.
-
- <moria> /mor'i-ah/ n. Together with <nethack> and <rogue>, one
- of the large PD Dungeons-and-Dragons-like simulation games,
- available for a wide range of machines and operating systems.
- Extremely addictive and a major consumer of time better used for
- hacking.
-
- <MOTAS> /moh-tahs/ [USENET, Member Of The Appropriate Sex] n. A
- potential or (less often) actual sex partner. See <MOTOS>,
- <MOTSS>, <S.O>.
-
- <MOTOS> /moh-tohs/ [from the 1970 census forms via USENET, Member Of
- The Opposite Sex] n. A potential or (less often) actual sex
- partner. See <MOTAS>, <MOTSS>, <S.O.> Less common than <MOTSS> or
- <MOTAS>, which has largely displaced it.
-
- <MOTSS> /motss/ or /em-oh-tee-ess-ess/ [from the 1970 census forms
- via USENET, Member Of The Same Sex] n. Esp. one considered as a
- possible sexual partner, e.g. by a gay or lesbian. The gay-issues
- newsgroup on USENET is called soc.motss. See <MOTOS> and
- <MOTAS>, which derive from it. Also see <S.O.>.
-
- <mount> vt. 1. To attach a removable physical storage volume to a
- machine. In elder days and on mainframes this verb was used almost
- exclusively of tapes; nowadays it is more likely to refer to a disk
- or disk pack. 2. By extension, to attach any removable device such
- as a sensor, robot arm, or <meatware> subsystem (see Appendix A).
- 3. [UNIX] To make a <logical> volume of some sort available for
- use. The volume in question may or may not be removable and may be
- just one partition of a physical device.
-
- <mouse ahead> vi. To manipulate a computer's pointing device (almost
- always a mouse in this usage, but not necessarily) and its
- selection or command buttons before a computer program is ready to
- accept such input, in anticipation of the program accepting the
- input. Handling this properly is rare, but it can help make a
- <user-friendly> program usable by real users, assuming they are
- familiar with the behavior of the user interface. Point-and-click
- analog of `type ahead'.
-
- <mouse around> vi. To explore public portions of a large system, esp.
- a network such as Internet via <FTP> or <TELNET>, looking for
- interesting stuff to <snarf>.
-
- <mouse elbow> n. A tennis-elbow-like fatigue syndrome resulting from
- excessive use of a <WIMP environment>.
-
- <mouso> /mow'soh/ n. [by analogy with "typo"] An error in mouse usage
- resulting in an inappropriate selection or graphic garbage on the
- screen. Compare <thinko>.
-
- <MS-DOS> /em-es-dos/ [MicroSoft Disk Operating System] n. A <clone> of
- <CP/M> for the 8088 crufted together in six weeks by hacker Tim
- Paterson, who is said to have regretted it ever since. Numerous
- features including vaguely UNIX-like but rather broken support for
- subdirectories, I/O redirection, and pipelines were hacked in in
- 2.0 and subsequent versions; as a result, there are two
- incompatible versions of many system calls, and MS-DOS programmers
- can never agree on basic things like what to use as an option
- switch or whether to be case-sensitive. The resulting mess is now
- the highest-unit-volume OS in history. Often known simply as DOS,
- which annoys people familiar with other similarly-abbreviated
- operating systems. Some people like to pronounce DOS as "dose", as
- in "I don't work on dose, man!", or to compare it with a dose of
- brain-damaging drugs. See <mess-dos>, <ill-behaved>.
-
- <MUD> [abbr: Multi User Dungeon] 1. A class of <virtual reality>
- experiments accessible via <Internet>. These are real-time chat
- forums with structure; they have multiple `locations' like an
- adventure game and may include combat, traps, puzzles, magic, a
- simple economic system, and the capability for characters to build
- more structure onto the database that represents the existing
- world. 2. vi. To play a MUD (see <hack-and-slay>). The acronym MUD
- is often lower-cased and/or verbed; thus, one may speak of "going
- mudding", etc.
-
- Historically, MUDs (and their more recent progeny with names of MU*
- form) derive from an AI experiment by Richard Bartle and Roy
- Trubshaw on the University of Essex's DEC-10 in the early 80's, and
- decendants of that game still exist today (see <BartleMUD>). The
- title `MUD' is still copyright to the commercial MUD run by Bartle
- on British Telecom (Their motto: "You haven't *lived* 'til
- you've *died* on MUD"), however this did not stop students on
- the European academic networks from copying/improving on the MUD
- concept, from which sprung several new MUDs (VAXMUD, AberMUD,
- LPMUD). Many of these had associated bulletin board systems for
- social interaction. Because USENET feeds have been spotty and
- difficult to get in the British Isles, and the British JANET
- network doesn't support <FTP> or <telnet>, the MUDs became
- major foci of hackish social interaction there.
-
- LPMUD and other variants crossed the Atlantic around 1988 and
- quickly gained popularity in the US; they became nuclei for large
- hacker communities with only loose ties to traditional hackerdom
- (some observers see parallels with the growth of USENET in the
- early 1980s).
-
- More recent MUDs, esp. in the US, (such as TinyMud) have tended to
- emphasize social interaction, puzzles, and cooperative
- world-building as opposed to combat and competition. Whether this
- represents a genuine long-term trend is hard to say; the state of
- the art in MUD design is still moving very rapidly, with new
- simulation designs appearing (seemingly) every month. There is now
- (early 1991) a move afoot to deprecate the term <MUD> itself, as
- newer designs exhibit an exploding variety of names corresponding
- to the different simulation styles being explored. See also
- <BartleMUD>, <berserking>, <bonk/oif>, <brand brand brand>,
- <FOD>, <hack-and-slay>, <mudhead>, <posing>, <talk mode>,
- <tinycrud>.
-
- <mudhead> n. Commonly used to refer to a <MUD> player who sleeps
- breathes and eats MUD. Mudheads have frequently been known to fail
- their degrees, drop out etc, with the consolation however that they
- made wizard level. When encountered in person, all a mudhead will
- talk about is two topics 1) The tactic, character or wizard that in
- his view is always unfairly stopping him/her becoming
- wizard/beating a favorite MUD, and 2) the mud he is writing/going
- to write because all existing muds are so dreadful! See also
- <wannabee>.
-
- <multician> /muhl-ti'shn/ [coined at Honeywell, c.1970] n.
- Competent user of <Multics>.
-
- <Multics> /muhl'tiks/ n. [from "MULTiplexed Information and Computing
- Service"] An early (late 1960s) timesharing operating system
- co-designed by a consortium including MIT, GE and Bell
- Laboratories, very innovative for its time (among other things, it
- introduced the idea of treating all devices uniformly as special
- files). All the members but GE eventually pulled out after
- determining that <second-system effect> had bloated MULTICS to the
- point of practical unusability (the `lean' predecessor in question
- is said to have been <CTSS>). Honeywell commercialized Multics
- after buying out GE's computer group, but it was never very
- successful (among other things, one was required to enter a
- password to log out). One of the developers left in the lurch by
- the project's breakup was Ken Thompson, a circumstance which led
- directly to the birth of <UNIX>. For this and other reasons
- aspects of the Multics design remain a topic of occasional debate
- among hackers. See also <brain-damage>.
-
- <multitask> n. Often used of humans in the same meaning it has for
- computers, to describe a person doing several things at once (but
- see <thrash>. The term "multiplex" from communications
- technology (meaning to handle more than one channel at the same
- time) is used similarly.
-
- <mumblage> /muhm'bl@j/ n. The topic of one's mumbling (see <mumble>).
- "All that mumblage" is used like "all that stuff" when it is
- not quite clear what it is or how it works, or like "all that
- crap" when "mumble" is being used as an implicit replacement for
- obscenities.
-
- <mumble> interj. 1. Said when the correct response is either too
- complicated to enunciate or the speaker has not thought it out.
- Often prefaces a longer answer, or indicates a general reluctance
- to get into a big long discussion. "Don't you think that we could
- improve LISP performance by using a hybrid reference-count
- transaction garbage collector, if the cache is big enough and there
- are some extra cache bits for the microcode to use?" "Well,
- mumble... I'll have to think about it." 2. Sometimes used as an
- expression of disagreement. "I think we should buy a <VAX>."
- "Mumble!" Common variant: <mumble frotz>. 3. Yet another
- metasyntactic variable, like <foo>.
-
- <munch> [often confused with `mung', q.v.] vt. To transform
- information in a serial fashion, often requiring large amounts of
- computation. To trace down a data structure. Related to <crunch>
- and nearly synonymous with <grovel>, but connotes less pain.
-
- <munching squares> n. A <display hack> dating back to the PDP-1
- (c.1962), which employs a trivial computation (repeatedly plotting
- the graph Y = X XOR T for successive values of T --- see <HAKMEM>
- items 146-148) to produce an impressive display of moving, and
- growing squares that devour the screen (allegedly invented by one
- Jackson Wright). The initial value of T was treated as a parameter
- which when well-chosen can produce amazing effects. Some of these,
- later (re)discovered on the LISP machine, have been christened
- <munching triangles> (try AND for XOR and toggling points instead
- of plotting them), <munching w's>, and <munching mazes>. More
- generally, suppose a graphics program produces an impressive and
- ever-changing display of some basic form foo on a display terminal,
- and does it using a relatively simple program; then the program (or
- the resulting display) is likely to be referred to as "munching
- foos" (this is a good example of the use of the word <foo> as a
- metasyntactic variable).
-
- <munchkin> /muhnch'kin/ [from the squeaky-voiced little people in L.
- Frank Baum's `The Wizard of Oz'] n. A teenage-or-younger micro
- enthusiast bashing BASIC or something else equally constricted. A
- term of mild derision --- munchkins are annoying but some grow up
- to be hackers after passing through a <larval stage>. The term
- <urchin> is also used. See also <wannabee>, <bitty box>.
-
- <mundane> [from SF fandom] n. 1. A person who is not in science
- fiction fandom. 2. A person who is not in the computer industry.
- In this sense, most often an adjectival modifier as in "in my
- mundane life..." This term is not necessarily as pejorative
- as it sounds.
-
- <mung> /muhng/ alt. `munge' /muhnj/ [in 1960 at MIT, `Mash Until No
- Good"; sometime after that the derivation from the <recursive
- acronym> `Mung Until No Good' became standard] vt. 1. To make
- changes to a file, often large-scale, usually irrevocable.
- Occasionally accidental. See <BLT>. 2. To destroy, usually
- accidentally, occasionally maliciously. The system only mungs
- things maliciously; this ia a consequence of Murphy's Law. See
- <scribble>, <mangle>, <trash>. Reports from <USENET> suggest that
- the pronunciation /muhnj/ is now usual in speech, but the spelling
- `mung' is still common in program comments. 3. The kind of beans of
- which the sprouts are used in Chinese food. (That's their real
- name! Mung beans! Really!)
-
- MUSIC n. A common extracurricular interest of hackers (compare
- SCIENCE-FICTION FANDOM, ORIENTAL FOOD; see also <filk>). It is
- widely believed among hackers that there is a substantial
- correlation between whatever mysterious traits underlie hacking
- ability (on the one hand) and musical talent and sensitivity (on
- the other). It is certainly the case that hackers, as a rule, like
- music and often develop musical appreciation in unusual and
- interesting directions. Folk music is very big in hacker circles;
- so is the sort of elaborate instrumental jazz/rock that used to be
- called `progressive' and isn't recorded much any more. Also, the
- hacker's musical range tends to be wide; many can listen with equal
- appreciation to (say) Talking Heads, Yes, Spirogyra, Scott Joplin,
- King Sunny Ade, The Pretenders, or one of Bach's Brandenburg
- Concerti. It is also apparently true that hackerdom includes a
- much higher concentration of talented amateur musicians than one
- would expect from a similar-sized control group of <mundane> types.
-
- <mutter> vt. To quietly enter a command not meant for the ears of
- ordinary mortals. Frequently in `mutter an <incantation>'.
-
- {= N =}
-
- <N> /en/ adj. 1. Some large and indeterminate number of objects;
- "There were N bugs in that crock!"; also used in its original
- sense of a variable name. 2. An arbitrarily large (and perhaps
- infinite) number; "This crock has N bugs, as N goes to infinity".
- 3. A variable whose value is specified by the current context. For
- example, when ordering a meal at a restaurant N may be understood
- to mean however many people there are at the table. From the
- remark "We'd like to order N wonton soups and a family dinner for
- N-1." you can deduce that one person at the table wants to eat
- only soup, even though you don't know how many people there are. A
- silly riddle: "How many computers does it take to shift the bits
- in a register? N+1: N to hold all the bits still, and one to shove
- the register over." 4. "Nth": adj. The ordinal counterpart of
- N. "Now for the Nth and last time..." In the specific
- context "Nth-year grad student", N is generally assumed to be at
- least 4, and is usually 5 or more (see <tenured graduate
- student>). See also <random numbers>, <two-to-the-n>.
-
- <nailed to the wall> [like a trophy] adj. Said of a bug finally
- eliminated after protracted and even heroic effort.
-
- <naive> adj. Untutored in the perversities of some particular
- program or system; one who still tries to do things in an intuitive
- way, rather than the right way (in really good designs these
- coincide, but most designs aren't `really good' in the appropriate
- sense). This is completely unrelated to general maturity or
- competence or even competenaineat any other program. It is a sad
- commentary on the primitive state of computing that the natural
- opposite of this term often claimed to be `experienced user' but
- is really more like `cynical user'.
-
- <naive user> 1. n. A <luser>. Tends to imply someone who is
- ignorant mainly due to experience; when applied to someone who
- "has" experience, there is a definite implication of stupidity.
-
- <NAK> [from the ASCII mnemonic for 0010101] interj. 1. On-line joke
- answer to ACK? (see <ACK>) --- "I'm not here". 2. On line answer
- to a request for chat --- "I'm not available". 3. Used to
- politely interrupt someone to tell them you don't understand their
- point or that they have suddenly stopped making sense. See <ACK>,
- sense #3. "And then, after we recode the project in COBOL..."
- "Nak Nak Nak! I thought I heard you say COBOL!"
-
- <nano-> [in measurement, a quantifier meaning * 10 ^ -9] pref. Smaller
- than <micro->, and used in the same rather loose and connotative
- way. Thus, one has <nanotechnology> (coined by hacker Eric
- Drexler) by analogy with "microtechnology"; and some machine
- architectures have a "nanocode" level below "microcode".
- See also <pico->. See also <nanoacre>.
-
- <nanoacre> /nan'o-ay`kr/ n. An areal unit (about 2mm.sq.) of
- real estate on a VLSI chip. The term derives its amusement
- value from the fact that VLSI nanoacres have costs in the same
- range as real acres once one figures in design and
- fabrication-setup costs.
-
- <nanobot> /nan'oh-bot/ n. A robot of microscopic proportions,
- presumably built by means of <nanotechnology>. As yet, only used
- informally (and speculatively!). Also sometimes called a
- "nanoagent".
-
- <nanocomputer> /nan'oh-k@m-pyoo'tr/ n. A computer whose switching
- elements are molecular in size. Designs for mechanical
- nanocomputers which use single-molecule sliding rods for their
- logic have been proposed. The controller for a <nanobot> would be
- a nanocomputer.
-
- <nanotechnology> /nan'-oh-tek-no`l@-ji/ n. A hypothetical
- fabrication technology in which objects are designed and built with
- the individual specification and placement of each separate atom.
- The first unequivocal nano-fabrication experiments are taking place
- now (1990), for example with the deposition of individual xenon
- atoms on a nickel substrate to spell the logo of a certain very
- large computer company by two of its physicists. Nanotechnology
- has been a hot topic in the hacker subculture ever since the term
- was coined by K. Eric Drexler in his book `Engines of Creation',
- where he predicted that nanotechnology could give rise to
- replicating assemblers, permitting an exponential growth of
- productivity and personal wealth. See also <blue goo>, <gray goo>,
- <nanobot>.
-
- <nastygram> n. 1. A protocol packet or item of email (the latter is
- also called a "letterbomb") that takes advantage of misfeatures
- or security holes on the target system to do untoward things. 2.
- Disapproving mail, esp. from a net.god, pursuant to a violation of
- <netiquette>. Compare <shitogram>. 3. A status report from an
- unhappy, and probably picky, customer. "What'd the Germans say in
- today's nastygram?" 4. [deprecated] An error reply by mail from a
- <daemon>; in particular, a <bounce message>.
-
- <Nathan Hale> n. An asterisk (See also <splat>). Oh, you want an
- etymology? Notionally from "I regret that I have only one asterisk
- for my country", a misquote of the famous remark uttered by Nathan
- Hale just before he was hanged. Hale was a (failed) spy for the
- rebels in the American War of Independence.
-
- <neophilia> /nee`oh-fil'-ee-uh/ n. The trait of being excited and
- pleased by novelty. Common trait of most hackers, SF fans, and
- members of several other connected leading-edge subcultures
- including the pro-technology `Whole-Earth' wing of the ecology
- movement, space activists, theater people, the membership of MENSA,
- and the <Discordian>/neo-pagan underground. All these groups
- overlap heavily and (where evidence is available) seem to share
- characteristic hacker tropisms for SF, MUSIC and ORIENTAL FOOD.
-
- <nethack> /net'hak/ n. See <hack>, sense #12.
-
- <netiquette> /net'ee-ket, net'i-ket/ [portmanteau fr. "network
- etiquette"] n. Conventions of politeness recognized on <USENET>,
- such as: avoidance of cross-posting to inappropriate groups, or
- refraining from commercial pluggery on the net.
-
- <neep-neep> /neep neep/ [onomatopoeic, from New York SF fandom] n. One
- who is fascinated by computers. More general than <hacker>, as it
- need not imply more skill than is required to boot games on a PC.
- The gerund "neep-neeping" applies specifically to the long
- conversations about computers that tend to develop in the corners
- at most SF-convention parties. Fandom has a related proverb to the
- effect that "Hacking is a conversational black hole!"
-
- <net.-> /net dot/ pref. [USENET] Prefix used to describe people and
- events related to USENET. From the time before the <Great
- Renaming>, when all non-local newsgroups had names beginning
- `net.'. Includes <net.god>s, "net.goddesses" (various
- charismatic women with circles of on-line admirers),
- "net.lurkers", (see <lurker>), "net.parties" (a synonym
- for <boink> sense #2 (q.v.)) and many similar constructs. See
- also <net.police>.
-
- <net.god> /net god/ n. Used to refer to anyone who satisfies some
- combination of the following conditions: has been visible on USENET
- for more than five years, ran one of the original backbone sites,
- moderated an important newsgroup, wrote news software, or knows
- Gene, Mark, Rick, Mel, Henry, Chuq, and Greg personally. See
- <demigod>.
-
- <net.police> n. Those USENET readers who feel it is their
- responsibility to pounce on and <flame> any posting which they
- regard as offensive, or in violation of their understanding of
- <netiquette>. Generally used sarcastically or pejoratively. Also
- spelled `net police'. See also <net.->, <code police>.
-
- <netrock> [IBM] n. A <flame>; used esp. on VNET, IBM's internal
- corporate network.
-
- <network address> n. (also "net address") As used by hackers,
- means an address on <the network> (almost always a <bang path>
- or <Internet address>). An essential to be taken seriously by
- hackers; in particular, persons or organizations claiming to
- understand, work with, sell to, or recruit from among hackers that
- *don't* display net addresses are quietly presumed to be
- clueless poseurs and mentally flushed (see <flush>, sense #3).
- Hackers often put their net addresses on their business cards and
- wear them prominently in contexts where they expect to meet other
- hackers face-to-face (see also SCIENCE-FICTION FANDOM). This
- is mostly functional, but is also a connotative signal that one
- identifies with hackerdom (like lodge pins among Masons or tie-dyed
- T-shirts among Grateful Dead fans). Net addresses are often used
- in email text as a more concise substitute for personal names;
- indeed, hackers may come to know each other quite well by network
- names without ever learning each others' `legal' monikers. See
- also <sitename>.
-
- <network, the> n. 1. The union of all the major noncommercial,
- academic and hacker-oriented networks such as Internet, the old
- ARPANET, NSFnet, BITNET and the virtual UUCP and <USENET>
- `networks', plus the corporate in-house networks that gate to them.
- A site is generally considered `on the network' if it can be
- reached through some combination of Internet-style (@-sign) and
- UUCP (bang-path) addresses. See <bang path>, <Internet
- address>, <network address>. 2. A fictional conspiracy of
- libertarian hacker-subversives and anti-authoritarian
- monkeywrenchers described in Robert Anton Wilson's novel
- `Schrodinger's Cat', to which many hackers have subsequently
- decided they belong (this is an example of <ha ha only serious>).
-
- <New Jersey> [primarily Stanford/Silicon Valley] adj. Pejorative term
- for the quality of being brain-damaged or of poor design. It refers
- to the allegedly poor designs of such software as C, C++, and UNIX
- (which originated at Bell Labs in New Jersey). "This compiler
- bites the bag, but what can you expect from a compiler designed in
- New Jersey?" See also <UNIX conspiracy>.
-
- <New Testament> n. [C programmers] The second edition of K&R's `The C
- Programming Language' (Prentice-Hall 1988, ISBN 0-13-110362-8),
- describing ANSI Standard C. See <K&R>.
-
- <newbie> /n[y]oo'bee/ n. [orig. fr. British military & public-school
- slang contraction of "new boy"] A USENET neophyte. This term
- originated in the <newsgroup> "talk.bizarre" but is now in wide
- use. Criteria for being considered a newbie vary wildly; a person
- can be called a newbie in one newsgroup while remaining a respected
- participant in another. The label "newbie" is sometimes applied
- as a serious insult, to a person who has been around USENET for a
- long time, but who carefully hides all evidence of having a clue.
- See <BIFF>.
-
- <newgrp wars> /n[y]oo'grp wohrz/ [USENET] n. Salvos of dueling
- `newgrp' and `rmgroup' messages sometimes exchanged by persons on
- opposite sides of a dispute over whether a <newsgroup> should be
- created netwide. These usually settle out within a week or two as
- it becomes clear whether the group has a natural constituency
- (usually, it doesn't). At times, especially in the completely
- anarchic "alt" hierarchy, the names of newsgroups themselves become
- a form of comment or humor; cf. the spinoff of
- "alt.swedish.chef.bork.bork.bork" from "alt.tv.muppets" in early 1990,
- or any number of specialized abuse groups named after particularly
- notorious <flamer>s.
-
- <newline> /n[y]oo'lien/ n. 1. [UNIX] The ASCII LF character
- (0001010), used under <UNIX> as a text line terminator. A
- Bell-Labs-ism rather than a Berkeleyism; interestingly (and
- unusually for UNIX jargon) it is said originally to have been an
- IBM usage (though it appears in early ASCII standards, it never
- caught in in the general computing world before UNIX). 2. More
- generally, any magic character sequence or operation (like Pascal's
- writeln() function) required to terminate a text record. See
- <crlf>, <terpri>.
-
- <newsfroup> /n[y]oos'froop/ [USENET] n. Silly written-only synonym for
- <newsgroup>, originated as a typo but now in regular use on
- USENET'S talk.bizarre and other not-real-tightly-wrapped groups.
-
- <newsgroup> [USENET] n. One of USENET's large collection of topic
- groups. Among the best-known are "comp.lang.c" (the C-language
- forum), "comp.unix.internals" (for UNIX wizards),
- "rec.arts.sf-lovers" (for science-fiction fans) and
- "talk.politics.misc" (miscellaneous political discussions and
- <flamage>).
-
- <nickle> [From "nickel", common name for the US 5-cent coin] n. A
- <nybble> + 1; 5 bits. Reported among developers for Mattel's GI
- 1600 (the Intellivision games processor), a chip with 16-bit-wide
- RAM but 10-bit-wide ROM. See also <deckle>.
-
- <night mode> n. See <phase> (of people).
-
- <Nightmare File System> n. Pejorative hackerism for Sun's Network
- File System (NFS). In any nontrivial network of Suns where there
- is a lot of NFS cross-mounting, when one Sun goes down, the others
- freeze up because of this behavior: Some machine pings the dead one
- and gets no response, and that machine continues to ping the dead
- one, causing it to appear dead to some messages. Then another
- machine pings either the really dead machine or the sometimes dead
- machine, and this machine enters this mode. The first machine to
- discover the dead one is now both trying to ping the dead one and
- respond to the second machine, so it is dead more often. This
- snowballs very fast and soon the entire set of machine is frozen.
- "It's that damned nightmare file system again." See also
- <broadcast storm>.
-
- <nil> [from LISP terminology for `false'] No. Usage: used in reply
- to a question, particularly one asked using the `-P' convention.
- See <T>.
-
- <NMI> n. Non-Maskable Interrupt. See <priority interrupt>.
-
- <noddy> [Great Britain; from the children's books] adj. Small and
- unuseful, but demonstrating a point. Noddy programs are often
- written when learning a new language or system. The archetypal
- noddy program is <hello world>. Noddy code may be used to
- demonstrate a feature or bug of a compiler, but would not be used
- in a real program. May be used of real hardware or software to
- imply that it isn't worth using. "This editor's a bit noddy."
-
- <NOMEX underwear> [USENET] n. Syn. <asbestos longjohns>, used
- mostly in auto related mailing lists and newsgroups. NOMEX
- underwear is an actual product available on the racing equipment
- market, used as a fire retardant measure and required in some
- racing series.
-
- <non-optimal solution> n. (also "sub-optimal solution") An
- astoundingly stupid way to do something. This term is generally
- used in deadpan sarcasm, as its impact is greatest when the person
- speaking looks completely serious. Compare <stunning>. See also
- <Bad Thing>.
-
- <nonlinear> adj. [scientific computation] Behaving in an erratic and
- unpredictable fashion. When used to describe the behavior of a
- machine or program, it suggests that said machine or program is
- being forced to run far outside of design specifications. This
- behavior may be induced by unreasonable inputs, or may be triggered
- when a more mundane bug sends the computation far away from its
- expected course. When describing the behavior of a person,
- suggests a tantrum or a <flame>. "When you talk to Bob, don't
- mention the drug problem or he'll go nonlinear for hours."
-
- <nontrivial> adj. Requiring real thought or significant computing
- power. Often used as an understated way of saying that a problem
- is quite difficult. The preferred emphatic form is "decidedly
- nontrivial". See <trivial>, <uninteresting>, <interesting>.
-
- <no-op> /noh-op/ alt. NOP (nop) [no operation] n. 1. A machine
- instruction that does nothing (sometimes used in assembler-level
- programming as filler for data areas). 2. A person who contributes
- nothing to a project, or has nothing going on upstairs, or both.
- As in "he's a no-op.". 3. Any operation or sequence of operations
- with no effect, such as circling the block without finding a
- parking space, or putting money into a vending machine and having
- it fall immediately into the coin-return box, or asking someone for
- help and being told to go away. "Oh well, that was a no-op."
-
- <notwork> n. A network, when it's acting <flaky> or <down>.
- Compare <nyetwork>. Orig. referred to a particular perioud of
- flakiness on IBM's VNET corporate network, c.1988.
-
- <NP-> /en pee/ pref. Extremely. Used to modify adjectives describing
- a level or quality of difficulty. "Getting this algorithm to
- perform correctly in every case is NP-annoying." This is
- generalized from the computer science terms "NP-hard" and
- "NP-complete". NP is the set of Nondeterministic-Polynomial
- algorithms, those which can be completed by a nondeterministic
- finite state machine in an amount of time that is a polynomial
- function of the size of the input.
-
- <NSA line eater> n. The mythical NSA (National Security Agency)
- trawling program sometimes assumed to be reading <USENET> for the
- U.S. Government's spooks. Some netters put loaded phrases like
- `Uzi' `nuclear materials' `Palestine' `cocaine' and `assassination'
- in their <sig block>s in an attempt to confuse and overload the
- creature. The <GNU> version of <EMACS> actually has a command
- that randomly generates a lot of words like that into your edited
- text.
-
- <nuke> vt. 1. To intentionally delete the entire contents of a given
- directory or storage volume. "On UNIX, `rm -r /usr' will nuke
- everything in the usr filesystem." Never used for accidental
- deletion. Oppose <blow away>. 2. Syn. for <dike>, applied to
- smaller things such as files, features or code sections. 3. Used of
- processes as well as files; frequently an alias for `kill -9' on
- UNIX.
-
- <null device> n. A <logical> input/output device connected to the <bit
- bucket>; when you write to it nothing happens, when you read from
- it you get a zero-length record full of nothing. Useful for
- discarding unwanted output or using interactive programs in a
- non-interactive way. See </dev/null>.
-
- <numbers> [scientific computation] n. Results of a computation that
- may not be physically significant, but at least indicate that the
- program is running. May be used to placate management, grant
- sponsors, etc. "Making numbers" means running a program
- because output --- any output, not necessarily meaningful output
- --- is needed as a demonstration of progress. See <pretty
- pictures>, <math-out>, <social science number>.
-
- <NUXI problem> /nuk'see pro'blm/ n. This refers to the problem of
- transferring data between machines with differing byte-order. The
- string `UNIX' might look like `NUXI' on a machine with a
- different "byte sex" (i.e. when transferring data from a
- little-endian to a big-endian or vice-versa). See also,
- <big-endian>, <little-endian>, <swab>, and <bytesexual>.
-
- <nybble> /nib'l/ [from v. "nibble" by analogy with "bite"
- => "byte"] n. Four bits; one hexadecimal digit; a
- half-byte. Though `byte' is now accepted technical jargon found in
- dictionaries, this useful relative is still slang. Compare
- <byte>, <crumb>, <taste>, <dynner>, see also <bit>.
- Apparently this spelling is uncommon on his side of the pond, as
- British orthography suggests the pronunciation /niebl/.
-
- <nyetwork> [fr. Russian "nyet" = no] n. A network, when it's
- acting <flaky> or <down>. Compare <notwork>.
-
- {= O =}
-
- <Ob-> /ob/ pref. Obligatory. A piece of <netiquette> that acknowledges
- the author has been straying from the newsgroup's charter. For
- example, if a posting in alt.sex has nothing particularly to do
- with sex, the author may append `ObSex' (or `Obsex') and toss
- off a question or vignette about some unusual erotic act.
-
- <obscure> adj. Used in an exaggeration of its normal meaning, to imply
- a total lack of comprehensibility. "The reason for that last
- crash is obscure." "The `find(1)' command's syntax is obscure."
- The phrase <moderately obscure> implies that it could be figured
- out but probably isn't worth the trouble. <Obscure in the extreme>
- is a preferred emphatic form.
-
- <Obfuscated C Contest> n. Annual contest run since 1984 over <the
- network> by Landon Curt Noll & friends. The overall winner is he
- who produces the most unreadable, creative and bizarre working C
- program; various other prizes are awarded at the judges' whim.
- Given C's terse syntax and macro-preprocessor facilities, this
- gives contestants a lot of maneuvering room. The winning programs
- often manage to be simultaneously a) funny, b) breathtaking works
- of art, and c) Horrible Examples of how *not* to code in C.
-
- This relatively short and sweet entry might help convey the flavor
- of obfuscated C:
-
- /*
- * HELLO WORLD program
- * by Jack Applin and Robert Heckendorn, 1985
- */
- main(v,c)char**c;{for(v[c++]="Hello, world!\n)";
- (!!c)[*c]&&(v--||--c&&execlp(*c,*c,c[!!c]+!!c,!c));
- **c=!c)write(!!*c,*c,!!**c);}
-
- See also <hello, world!>.
-
- <octal forty> /ok'tl for'tee/ n. Hackish way of saying "I'm drawing
- a blank". Octal 40 is the ASCII space character; by an odd
- concidence, "hex" 40 is the <EBCDIC> space character. See
- <wall>.
-
- <off-by-one error> n. Exceedingly common error induced in many ways,
- such as by starting at 0 when you should have started at 1 or vice
- versa, or by writing < N instead of <= N or vice-versa. Also
- applied to giving an object to the person next to the one who
- should have gotten it. Often confused with <fencepost error>,
- which is properly a particular subtype of it.
-
- <off the trolley> adj. Describes the behavior of a program which
- malfunctions but doesn't actually <crash> or get halted by the
- operating system. See <glitch>, <bug>, <deep space>.
-
- <offline> adv. Not now or not here. Example: "Let's take this
- discussion offline." Specifically used on <USENET> to suggest
- that a discussion be taken off a public newsgroup to email.
-
- <old fart> n. Tribal elder. A title self-assumed with remarkable
- frequency by (esp.) USENETters who have been programming for more
- than about twenty five years; frequently appears in SIGs attached
- to jargon file contributions of great archeological significance.
- This is a term of insult in second or third person but pride in
- first person.
-
- <Old Testament> n. [C programmers] The first edition of the book
- describing <Classic C>; see <K&R>.
-
- <ONE BELL SYSTEM (IT WORKS)> This was the output from the old Unix V6
- `1' command. The `1' command also contained a random number
- generator which gave it a one in ten chance of recursively
- executing itself.
-
- <one-line fix> n. Often used sarcastically used of a change to a
- program that is thought to be trivial or insignificant right up to
- the moment it crashes the system. Usually `cured' by another
- one-line fix. See also <I didn't change anything!>.
-
- <one-liner wars> n. Popular game among hackers who code in the
- language APL (see <write-only language>). The objective is to see
- who can code the most interesting and/or useful routine in one line
- of operators chosen from APL's exceedingly <hairy> primitive set.
- [This is not *quite* as silly as it sounds; I myself have
- coded one-line <life> programs and once uttered a one-liner that
- performed lexical analysis of its input string followed by a
- dictionary lookup for good measure --- ESR] It has been reported
- that a similar amusement was practiced among <TECO> hackers.
-
- <ooblick> /oo'blik/ [from Dr. Seuss' `Bartholomew and the Ooblick']
- n. A bizarre semi-liquid sludge made from cornstarch and water.
- Enjoyed among hackers who make batches for playtime at parties for
- its amusing and extremely non-Newtonian behavior; it pours and
- splatters, but resists rapid motion like a solid and will even
- crack when hit by a hammer. Often found near lasers.
-
- <open> n. Abbreviation for `open (or left) parenthesis', used when
- necessary to eliminate oral ambiguity. To read aloud the LISP form
- (DEFUN FOO (X) (PLUS X 1)) one might say: "Open def-fun foo, open
- eks close, open, plus eks one, close close." See <close>.
-
- <open switch> [IBM, prob. fr. railroading] n. An unresolved
- question, issue, or problem.
-
- <operating system> n. (Often abbreviated `OS') The foundation
- software of a machine, of course; that which schedules tasks,
- allocates storage, and presents a default interfaae to the user
- between applications. The facilities the operating system provides
- and its general design philosophy exert an extremely strong
- influence on programming style and the technical culture that grows
- up around a machine. Hacker folklore has been shaped primarily by
- the UNIX, ITS, TOPS-10, TOPS-20/TWENEX, VMS, CP/M, MS-DOS, and
- MULTICS operating systems (most importantly by ITS and UNIX). Each
- of these has its own entry, which see.
-
- <Orange Book> n. The U.S. Government's standards document (Trusted
- Computer System Evaluation Criteria, DOD standard 5200.28-STD,
- December, 1985) characterizing secure computing architectures,
- defining levels A1 (most secure) through D (least). Stock UNIXes
- are roughly C2. See also <Red Book>, <Blue Book>, <Green Book>,
- <Silver Book>, <Purple Book>, <White Book>, <Pink-Shirt Book>,
- <Dragon Book>, <Aluminum Book>.
-
- ORIENTAL FOOD n. Hackers display an intense tropism towards Oriental
- cuisine, especially Chinese, and especially of the spicier
- varieties such as Szechuan and Hunan. This phenomenon (which has
- also been observed in subcultures which overlap heavily with
- hackerdom, most notably science-fiction fandom) has never been
- satisfactorily explained, but is sufficiently intense that one can
- assume the target of a hackish dinner expedition to be the best
- local Chinese place and be right at least 3 times out of 4. See
- also <ravs>, <great-wall>, <stir-fried random>. Thai, Indian,
- Korean and Vietnamese cuisines are also quite popular.
-
- <orphan> [UNIX] n. A process whose parent has died; one inherited by
- `init(1)'. Compare <zombie>.
-
- <orthogonal> [from mathematics] adj. Mutually independent;
- well separated; sometimes, irrelevant to. Used in a generalization
- of its mathematical meaning to describe sets of primitives or
- capabilities which, like a vector basis in geometry, span the
- entire `capability space' of the system and are in some sense
- non-overlapping or mutually independent. For example, in
- architectures such as the VAX where all or nearly all registers can
- be used interchangeably in any role with respect to any
- instruction, the register set is said to be orthogonal. Or, in
- logic, the set of operators "not" and "or" is orthogonal,
- but the set "nand", "or" and "not" is not (because any
- one of these can be expressed in terms of the other two via De
- Morgan's Laws). Also used in comment on human discourse; "This may
- be orthogonal to the discussion, but...".
-
- <OS> /oh ess/ 1. [Operating System] n. Acronym heavily used in email,
- occasionally in speech. 2. obs. n. On ITS, an output spy. See
- Appendix A.
-
- <OS/2> /oh ess too/ n. The anointed successor to MS-DOS for
- Intel-286 and (allegedly) 386-based micros; proof that
- IBM/Microsoft couldn't get it right the second time, either. Cited
- here because mentioning it is usually good for a cheap laugh among
- hackers --- the design was so <baroque> and the implementation of
- 1.x so bad that three years after introduction you could still
- count the major <app>s shipping for it on the fingers of two
- hands. Often called "Half-an-OS". On 28 January 1991, Microsoft
- announced that it was dropping its OS/2 development to concentrate
- on Windows, leaving the OS entirely in the hands of ex-partner IBM
- and effectively killing it. See <vaporware>, <monstrosity>,
- <cretinous>, <second-system effect>.
-
- <overflow bit> n. On some processors, an attempt to calculate a
- result too large for a register to hold causes a <trap> with a
- particular <flag> called an <overflow bit> set. Hackers use
- the term of human thought too. "Well, the ADA description was
- <baroque>, but I could hack it OK until I they got to the
- exception handling...that set my overflow bit."
-
- <overrun screw> [C programming] n. A variety of <fandango on core>
- produced by scribbling past the end of an array (C has no checks
- for this). This is relatively benign and easy to spot if the array
- is static; if it is auto, the result may be to <smash the stack>.
- The term <overrun screw> is used esp. of scribbles beyond the end
- of arrays allocated with `malloc(3)'; this typically trashes the
- allocation header for the next block in the <arena>, producing
- massive lossage within malloc and (frequently) a core dump on the
- next operation to use `stdio(3)' or `malloc(3)' itself. See <spam>; see
- also <memory leak>, <aliasing bug>, <precedence lossage>, <fandango
- on core>.
-
- {= P =}
-
- <padded cell> n. Where you put lusers so they can't hurt anything.
- A program that limits a <luser> to a carefully restricted subset
- of the capabilities of the host system (for example, the
- `rsh(1)' utility on UNIX). Note that this is different from
- an <iron box> because it's overt and not aimed at enforcing
- security so much as protecting others (and the luser him/herself!)
- from the consequences of the luser's boundless naivete (see
- <naive>). Also "padded cell environment".
-
- <page in> [MIT] vi. To become aware of one's surroundings again after
- having paged out (see <page out>). Usually confined to the sarcastic
- comment, "So-and-so pages in. Film at 11." See <film at 11>.
-
- <page out> [MIT] vi. To become unaware of one's surroundings
- temporarily, due to daydreaming or preoccupation. "Can you repeat
- that? I paged out for a minute." See <page in>. Compare
- <glitch>, <thinko>.
-
- <pain in the net> n. A <flamer>.
-
- <panic> [UNIX] vi. An action taken by a process or the entire operating
- system when an unrecoverable error is discovered. The action
- usually consists of: (1) displaying localized information on the
- controlling terminal, (2) saving, or preparing for saving, a memory
- image of the process or operating system, and (3) terminating the
- process or rebooting the system.
-
- <param> /p@-ram'/ n. Speech-only shorthand for "parameter". Compare
- <arg>, <var>. The plural `params' is often further compressed to
- `parms' /parmz/.
-
- <paper-net> n. Hackish way of referring to the postal service,
- analogizing it to a very slow, low-reliability network. USENET
- <sig block>s not uncommonly include the sender's postal address
- next to a "Paper-Net:" header; common variants of this are
- "Papernet" and "P-Net". Compare <voice-net>, <snail-mail>.
-
- <parent message> n. See <followup>.
-
- <parity errors> pl.n. Those little lapses of attention or (in more
- severe cases) consciousness, usually brought on by having spent all
- night and most of the next day hacking. "I need to go home and
- crash; I'm starting to get a lot of parity errors." Derives from a
- relatively common but nearly always correctable transient error in
- RAM hardware.
-
- <parse> [from linguistic terminology via AI research] vt. 1. To
- determine the syntactic structure of a sentence or other utterance
- (close to the standard English meaning). Example: "That was the
- one I saw you." "I can't parse that." 2. More generally, to
- understand or comprehend. "It's very simple; you just kretch the
- glims and then aos the zotz." "I can't parse that." 3. Of
- fish, to have to remove the bones yourself (usually at a Chinese
- restaurant). "I object to parsing fish" means "I don't want to
- get a whole fish, but a sliced one is okay." A "parsed fish"
- has been deboned. There is some controversy over whether
- "unparsed" should mean `bony', or also mean `deboned'.
-
- <Pascal> n. An Algol-descended language designed by Niklaus Wirth on
- the CDC 6600 around 1967-68 as an instructional tool for elementary
- programming. This language, designed primarily to keep students
- from shooting themselves in the foot and thus extremely restrictive
- from a general-purpose-programming point of view, was later
- promoted as a general-purpose tool and in fact became the ancestor
- of a large family of languges including Modula-2 and Ada (see also
- <bondage-and-discipline language>). The hackish point of view on
- Pascal was perhaps best summed up by a devastating (and, in its
- deadpan way, screamingly funny) 1981 paper by Brian Kernighan (of
- <K&R> fame) entitled `Why Pascal is Not My Favorite
- Computing Language'. Part of his summation is worth repeating
- here, because its criticisms are still apposite to Pascal itself
- after ten years of improvement, and could also stand as an
- indictment of many other <bondage and discipline> languages. At
- the end of a summary of the case against Pascal, he wrote:
-
- 9. There is no escape
-
- This last point is perhaps the most important. The language is
- inadequate but circumscribed, because there is no way to escape its
- limitations. There are no casts to disable the type-checking when
- necessary. There is no way to replace the defective run-time
- environment with a sensible one, unless one controls the compiler that
- defines the "standard procedures". The language is closed.
-
- People who use Pascal for serious programming fall into a fatal trap.
- Because the language is impotent, it must be extended. But each group
- extends Pascal in its own direction, to make it look like whatever
- language they really want. Extensions for separtarate compilation,
- Fortran-like COMMON, string data types, internal static variables,
- initialization, octal numbers, bit operators, etc., all add to the
- utility of the language for one group but destroy its portability to
- others.
-
- I feel that it is a mistake to use Pascal for anything much beyond its
- original target. In its pure form, Pascal is a toy language, suitable
- for teaching but not for real programming.
-
- Pascal has since been almost entirely displaced (by C) from the
- niches it had acquired in serious application and systems
- programming, but retains some popularity as a hobbyist language in
- the MS-DOS world.
-
- <patch> 1. n. A temporary addition to a piece of code, usually as a
- <quick and dirty> remedy to an existing bug or misfeature. A patch
- may or may not work, and may or may not eventually be incorporated
- permanently into the program. 2. vt. To insert a patch into a piece
- of code. 3. [in the UNIX world] n. a set of differences between two
- versions of source code, generated with `diff(1)' and intended to be
- mechanically applied using patch(1); often used as a way of
- distributing source code upgrades and fixes over <USENET>.
-
- <path> n. 1. A <bang path>; a node-by node specification of a link
- between two machines. 2. [UNIX] A filename, fully specified
- relative to the root directory (as opposed to relative to the
- current directory.
-
- <pathological> [scientific computation] adj. Used of a data set
- which is grossly atypical of the expected load, esp. one which
- exposes a weakness or bug in whatever algorithm one is using. An
- algorithm which can be broken by pathological inputs may still be
- useful if such inputs are very unlikely to occur in practice. 2.
- When used of a test load, implies that it was purposefully
- engineered as a worst case. The implication in both senses is that
- someone had to explicitly set out to break an algorithm in order to
- come up with such a crazy example.
-
- <payware> n. commercial software. Oppose <shareware> or
- <freeware>.
-
- <PBD> [abbrev of "Programmer Brain Damage"] n. Applied to bug reports
- revealing places where the program was obviously broken due to an
- incompetent or short-sighted programmer. Compare <UBD>; see also
- <brain-damaged>.
-
- <PC-ism> n. A piece of code or coding technique that takes advantage
- of the unprotected single-tasking environment in IBM PCs and the
- like. e.g. by busy-waiting on a hardware register, direct diddling
- of screen memory, or using hard timing loops. Compare
- <ill-behaved>, <vaxism>, <unixism>. Also, <pc-ware> n., a program
- full of PC-ISMs on a machine with a more capable operating system.
- Pejorative.
-
- <PD> /pee-dee/ adj. Common abbreviation for "public domain", applied
- to software distributed over <USENET> and from Internet archive
- sites. Much of this software is not in fact "public domain" in
- the legal sense but travels under various copyrights granting
- reproduction and use rights to anyone who can <snarf> a copy. See
- <copyleft>.
-
- <pdl> /pid'l/ or /puhd'l/ [acronym for Push Down List] In ITS days,
- the preferred MITism for <stack>. 2. Dave Lebling, one of the
- coauthors of <Zork>; (his <network address> on the ITS machines
- was at one time pdl@dms). 3. Program Design Language. Any of a
- large class of formal and profoundly useless pseudo-languages in
- which <management> forces one to design programs. <Management>
- often expects it to be maintained in parallel with the code. Used
- jokingly as in, "Have you finished the PDL?" See also
- <flowchart>.
-
- <PDP-10> [Programmable Data Processor model 10] n. The machine that
- made timesharing real. Looms large in hacker folklore due to early
- adoption in the mid-70s by many university computing facilities and
- research labs including the MIT AI lab, Stanford and CMU. Some
- aspects of the instruction set (most notably the bit-field
- instructions) are still considered unsurpassed. Later editions
- were labelled `DECsystem-10' as a way of differentiating them from
- the PDP-11. The '10 was eventually eclipsed by the PDP-11 and VAX
- machines and dropped from DEC's line in the early '80s, and in 1990
- to have cut one's teeth on one is considered something of a badge
- of honorable old-timerhood among hackers. See <TOPS-10>,
- <ITS>, <AOS>, <blt>, <DDT>, <DPB>, <EXCH>, <HAKMEM>,
- <JFCL>, <LDB>, <pop>, <push>, Appendix A.
-
- <peek> n.,vt. (and <poke>) The commands in most microcomputer
- BASICs for directly accessing memory contents at an absolute
- address; often extended to mean the corresponding constructs in any
- <HLL>. Much hacking on small, non-MMU micros consists of
- <peek>ing around memory, more or less at random, to find the
- location where the system keeps interesting stuff. Long and
- variably accurate, lists of such addresses for various computers
- circulate (see <interrupt list, the>). The results of <poke>s at
- these addresses may be highly useful, mildly amusing, useless but
- neat or (most likely) total <lossage> (see <killer poke>).
-
- <pencil and paper> n. An archaic information-storage and
- transmission device that works by depositing smears of graphite on
- bleached wood pulp. More recent developments in paper-based
- technology include improved `write-onae' update devices which use
- tiny rolling heads similar to mouse balls to deposit colored
- pigment. These devices require an operator skilled at so-called
- `handwriting' technique. They technologies are ubiquitous outside
- hackerdom, but nearly forgotten inside it. Most hackers had
- terrible handwriting to begin with, and years of keyboarding tend
- if anything to have allowed it to degrade further. Perhaps for
- this reason hackers <deprecate> pencil and paper technology and
- often resist using it in any but the most trivial contexts.
-
- <peon> n. A person with no special (<root> or <wheel>)
- privileges on a computer system. "I can't create an account on
- foovax for you, I'm only a peon there."
-
- <percent-s> /per-sent' ess/ [From "%s", the formatting sequence in
- C's `printf(3)' library function used to indicate that an arbitrary
- string may be inserted] n. An unspecified person or object. "I
- was just talking to some percent-s in administration." Compare
- <random>.
-
- <perf> /perf/ n. See <chad> (sense #1). The term "perfory"
- /per'f@-ree/ is also heard.
-
- <perfect programmer syndrome> n. Arrogance; the egostistical
- conviction that one is above normal human error. Most frequently
- found among programmers of some native ability but
- relatively little experience (especially new graduates; their
- perceptions may be distorted by a history of excellent performance
- bashing toy problems). "Of course my program is correct, there is no
- need to test it." Or "Yes, I can see there may be a problem
- here, but *I'll* never type `rm -r /' while in
- <root>."
-
- <Perl> [Practical Extraction and Report Language, aka Pathologically
- Eclectic Rubbish Lister] n. An interpreted language developed by
- Larry Wall (lwall@jpl.nasa.gov, author of `patch(1)') and
- distributed over USENET. Superficially resembles `awk(1)', but is
- much more arcane (see AWK). Increasingly considered a <language of
- choice> by UNIX sysadmins, who are almost always incorrigible
- hackers. Perl has been described, in a parody of a famous remark
- about `lex(1)', as the `Swiss-army chainsaw' of UNIX programming.
-
- <pessimal> /pes'i-ml/ [Latin-based antonym for "optimal"] adj.
- Maximally bad. "This is a pessimal situation." Also <pessimize>
- vt. to make as bad as possible. These words are the obvious
- Latin-based antonyms for "optimal" and "optimize", but for some
- reason they do not appear in most English dictionaries, although
- `pessimize' is listed in the Oxford English Dictionary.
-
- <pessimizing compiler> /pes'i-miez-ing kuhm-pie'lr/ [antonym of
- `optimizing compiler'] n. A compiler that produces object code that
- is worse than the straightforward or obvious translation. The
- implication is that the compiler is actually trying to optimize the
- program, but through stupidity is doing the opposite. A few
- pessimizing compilers have been written on purpose, however, as
- pranks.
-
- <peta-> /pe't@/ pref. Multiplier, 10 ^ 12 or [proposed] 2 ^ 40. See
- <kilo->.
-
- <PETSCII> /pet'skee/ [abbreviation of PET ASCII] n. the variation
- (many would say perversion) of the <ASCII> character set used by the
- Commodore Business Machines PET series of personal computers and
- the later Commodore C64, C16, and C128 machines. The PETSCII set
- used left-arrow and up-arrow instead of underscore and caret,
- places the unshifted alphabet at positions 65-90 and the shifted
- alphabet at positions 193-218, as well as adding graphics
- characters.
-
- <phase> 1. n. The phase of one's waking-sleeping schedule with
- respect to the standard 24-hour cycle. This is a useful concept
- among people who often work at night according to no fixed
- schedule. It is not uncommon to change one's phase by as much as
- six hours/day on a regular basis. "What's your phase?" "I've
- been getting in about 8 PM lately, but I'm going to <wrap around>
- to the day schedule by Friday." A person who is roughly 12 hours
- out of phase is sometimes said to be in "night mode". (The
- term "day mode" is also (but less frequently) used, meaning
- you're working 9 to 5 (or more likely 10 to 6)). The act of
- altering one's cycle is called "changing phase"; "phase
- shifting" has also been recently reported from Caltech. 2.
- "change phase the hard way": to stay awake for a very long time
- in order to get into a different phase. 3. "change phase the
- easy way": To stay asleep etc. However, some claim that either
- staying awake longer or sleeping longer is easy, and that it's
- *shortening* your day or night that's hard (see <wrap
- around>). The phenomenon of `jet lag' that afflicts travelers who
- cross many time-zone boundaries may be attributed to two distinct
- causes: the strain of travel per se, and the strain of changing
- phase. Hackers who suddenly find that they must change phase
- drastically in a short period of time, particularly the hard way,
- experience something very like jet lag without travelling.
-
- <phase of the moon> n. Used humorously as a random parameter on which
- something is said to depend. Sometimes implies unreliability of
- whatever is dependent, or that reliability seems to be dependent on
- conditions nobody has been able to determine. "This feature
- depends on having the channel open in mumble mode, having the foo
- switch set, and on the phase of the moon."
-
- True story: Once upon a time, a program written by Gerry Sussman
- (professor of Electrical Engineering at MIT) and Guy Steele had a
- bug that really did depend on the phase of the moon! There is a
- little subroutine that had traditionally been used in various
- programs at MIT to calculate an approximation to the moon's true
- phase; the phase is then printed out at the top of program
- listings, for example, along with the date and time, purely for
- fun. (Actually, since hackers spend a lot of time indoors, this
- might be the only way they would ever know what the moon's phase
- was!) Steele incorporated this routine into a LISP program that,
- when it wrote out a file, would print a `timestamp' line almost 80
- characters long. Very occasionally the first line of the message
- would be too long and would overflow onto the next line, and when
- the file was later read back in the program would <barf>. The
- length of the first line depended on the precise time when the
- timestamp was printed, and so the bug literally depended on the
- phase of the moon!
-
- The first paper edition of the Jargon File (Steele-1983) included
- an example of this bug, but the typesetter `corrected' it. This
- has since been described as the phase-of-the-moon-bug bug.
-
- <phreaking> [from "phone phreak"] n. 1. The art and science of
- cracking the phone network (so as, for example, to make free
- long-distance calls). 2. By extension, security-cracking in any
- other context (especially, but not exclusively, on communications
- networks).
-
- At one time phreaking was a semi-respectable activity among
- hackers; there was a gentleman's agreement that phreaking as an
- intellectual game and a form of exploration was O.K., but serious
- theft of services was taboo. There was significant crossover
- between the hacker community and the hard-core phone phreaks who
- ran semi-underground networks of their own like the legendary `TAP
- Newsletter'. This ethos began to break down in the mid
- nineteen-eighties as wider dissemination of the techniques put them
- in the hands of less responsible phreaks. Around the same time,
- hanges in the phone network made old-style technical ingenuity less
- effective as a way of hacking it, so phreaking came to depend more
- on overtly criminal acts like stealing phone-card numbers. The
- crimes and punishments of gangs like the `414 group' turned that
- game very ugly. A few old-time hackers still phreak casually just
- to keep their hand in, but most these days have hardly even heard
- of `blue boxes' or any of the other paraphenalia of the great
- phreaks of yore.
-
- <pico-> [in measurement, a quantifier meaning * 10 ^ -9] pref.
- Smaller than <nano->; used in the same rather loose and
- connotative way as <nano-> and <micro->. This usage is not yet
- common in the way <nano-> and <micro-> are, but is instantly
- recognizable to any hacker. The remaining standard quantifiers are
- "femto" (10 ^ -15) and "atto" (10 ^ -18); these,
- interestingly, derive not from Greek but from Danish. They have
- not yet acquired slang loadings, though it is easy to predict what
- those will be once computing technology enters the required realms
- of magnitude. See also <micro->.
-
- <pig, run like a> adj. To run very slowly on given hardware, said of
- software. Distinct from <hog>.
-
- <ping> /ping/ [from TCP/IP terminology, prob. originally contrived
- to match the submariners' term for a sonar pulse.] n.,vt. 1. Slang
- term for a small network message (ICMP ECHO) sent by a computer to
- check for the presenaineand aliveness of another. Occasionally used
- as a phone greeting. See <ACK>, also <ENQ>. 2. To verify the
- presence of. 3. To get the attention of. From the Unix command by
- the same name (an acronym of "Packet INternet Groper") that
- sends an ICMP ECHO packet to another host. 4. To send a message to
- all members of a <mailing list> requesting an <ACK> (in order
- to verify that everybody's addressses are reachable). "We haven't
- heard much anything from Geoff, but he did respond with an ACK both
- times I pinged jargon-friends."
-
- The funniest use of `ping' to date was described in January 1991 by
- Steve Hayman on the USENET group comp.sys.next. He was trying to
- isolate a faulty cable segment on a TCP/IP Ethernet hooked up to a
- NeXT machine, and got tired of having to run back to his console
- after each cabling frob to see if the ping packets were getting
- through. So he used the sound-recording feature on the NeXT, then
- wrote a script that repeatedly invoked ping, listened to the output
- and played back the recording on each returned packet. Result? A
- program that caused the machine to repeat, over and over,
- "Ping...ping...ping..." as long as the network was
- up. He turned the volume to maximum, scurried through the building
- with one ear cocked, and found a faulty tee connector in no time.
-
- <Pink-Shirt Book> `The Peter Norton Programmer's Guide to the IBM
- PC'. The original cover featured a picture of Peter Norton with a
- silly smirk on his face, wearing a pink shirt. Perhaps in
- recognition of this usage, the current edition has a different
- picture of Norton wearing a pink shirt.
-
- <PIP> /pip/ [Peripheral Interchange Program] vt.,obs. To copy, from
- the program PIP on CP/M and RSX-11 that was used for file copying
- (and in RSX for just about every other file operation you might
- want to do). Obsolete, but still occasionally heard. It is said
- that when the program was originated during the development of the
- PDP-6 in 1963 it called ATLATL (`Anything, Lord, to Anything,
- Lord').
-
- <pipeline> [UNIX, orig. by Doug McIlroy; now also used under MS-DOS
- and elsewhere] n. A chain of <filter> programs connected
- `head-to-tail', so that the output of one becomes the input of
- the next. Under UNIX, user utilities can often be implemented or
- at least prototyped by a suitable collection of pipelines and
- temp-file grinding encapsulated in a shell script; this is much
- less effort than writing C every time, and the capability is
- considered one of UNIX's major winning features.
-
- <pistol> [IBM] n. A tool that makes it all too easy for you to
- shoot yourself in the foot. "UNIX `rm *' makes such a nice
- pistol!"
-
- <pizza, ANSI standard> /an'see stan'd@rd peet'z@/ [CMU] Pepperoni
- and mushroom pizza. Coined allegedly because most pizzas ordered
- by CMU hackers during some period leading up to mid-1990 were of
- that flavor. See also <rotary debugger>.
-
- <pizza box> [SUN] n. The largish thin box housing the electronics
- in (especially SUN) desktop workstations, so named because of its
- size and shape, and the dimpled pattern that looks like air holes.
-
- <plain-ASCII> Syn. <flat-ASCII>.
-
- <playpen> [IBM] n. A room where programmers work. Compare <salt
- mines>.
-
- <playte> /playt/ 16 bits, by analogy with <nybble> and <byte>. Usage:
- rare and extremely silly. See also <dynner>.
-
- <plingnet> /pling'net/ n. Syn. <UUCPNET>. Also see COMMONWEALTH
- HACKISH.
-
- <plonk> [USENET] The sound a <newbie> makes as he falls to the bottom
- of a <kill file>. Almost exclusively used in the <newsgroup>
- "talk.bizarre", this term (usually written "*plonk*") is a
- form of public ridicule.
-
- <plugh> /ploogh/ [from the <ADVENT> game] v. See <xyzzy>.
-
- <plumbing> [UNIX] n. Term used for <shell> code, so called
- because of the prevalence of "pipeline"s that feed the output
- of one program to the input of another. Esp. used in the
- construction "hairy plumbing" (see <hairy>. "You can kluge
- together a basic spell-checker out of `sort(1)',
- `comm(1)' and `tr' with a little plumbing."
-
- <PM> /pee em/ 1. [from "preventive maintenance"] v. To bring down a
- machine for inspection or test purposes; see <scratch monkey>. 2.
- n. Abbrev. for `Presentation Manager', an <elephantine> OS/2
- graphical user interface.
-
- <P.O.D.> /pee-oh-dee/ Acronym for "Piece Of Data" (as opposed to a
- code section). Usage: pedantic and rare.
-
- <pod> n. A Diablo 630 (or, latterly, any impact letter quality
- printer). From the DEC-10 PODTYPE program used to feed formatted
- text to same.
-
- <poll> v.,n. 1. The action of checking the status of an input line,
- sensor, or memory location to see if a particular external event
- has been registered. 2. To ask. "I'll poll everyone and see where
- they want to go for lunch."
-
- <polygon pusher> n. A chip designer who spends most of his/her time at
- the physical layout level (which requires drawing *lots* of
- multi-colored polygons). Also "rectangle slinger".
-
- <poke> n.,vt. See <peek>.
-
- <POM> /pee-oh-em/ n. <Phase of the moon>. Usage: usually used in the
- phrase "POM dependent" which means <flaky>.
-
- <pop> /pop/ [based on the stack operation that removes the top of a
- stack, and the fact that procedure return addresses are saved on
- the stack] (also POP, POPJ /pop-jay/) 1. vt. To remove something
- from a <stack> or <pdl>. If a person says he has popped
- something from his stack, he means he has finally finished working
- on it and can now remove it from the list of things hanging over
- his head. 2. To return from a digression (the J-form derives
- specifically from a <PDP-10> assembler instruction). By verb
- doubling, "Popj, popj" means roughly, "Now let's see, where were
- we?" See <RTI>.
-
- <port> 1. v.,n. Describes the act of moving, translating,
- reconfiguring and adapting software from one machine architecture
- and/or operating system (the "source environment") to run on a
- different one (the "target environment"). Until recently and
- except among a relatively small group of modern operating systems
- this process has ranged from extremely painful up to flat-out
- impossible. The ubiquity of the C language and the spread of the
- UNIX operating system have, fortunately, done much to change this.
- 2. [from mainstream `port' for a door or gate] n. Anything one
- might plug a peripheral or communications line into; as in a
- `serial port' or `parallel port'.
-
- <posing> n. On a <MUD>, the use of `:' or an equivalent
- command to announce to other players that one is taking a certain
- physical action, which however has no effect on the game.
-
- <post> v. To send a message to a <mailing list> or <newsgroup>.
- Distinguished in context from "mail"; one might ask, for
- example, "Are you going to post the patch or mail it to known
- users?"
-
- <posting> n. Noun corresp. to v. <post> (but note that the shorter
- word can be nouned). Distinguished from a `letter' or ordinary
- <email> message by the fact that it's broadcast rather than
- point-to-point. It is unclear whether messages sent to a small
- mailing list are postings or <email>; perhaps the best dividing
- line is that if you don't know the names of all the potential
- recipients, it's a posting.
-
- <power cycle> vt. (also, to "cycle power") To power off a
- machine and then power it on immediately, with the intention of
- clearing some kind of <hung> or <gronked> state. Syn <120
- reset>; see also <Big Red Switch>. Compare <vulcan nerve
- pinch>, <bounce>, <boot>.
-
- <PPN> /pip'n/ [from "Project-Programmer Number"] n. A user-ID under
- <TOPS-10> and its various mutant progeny at SAIL, BBN,
- CompuServe and elsewhere. Old-time hackers from the PDP-10 era
- sometimes use this to refer to user IDs on other systems as well.
-
- <precedence lossage> /pre's@-dens los'j/ [C programmers] n. Coding
- error in an expression due to unexpected grouping of arithmetic or
- logical operators by the compiler. Used esp. of certain common
- coding errors in C due to the nonintuitively low precedence levels
- of `&', `|' and `^'. Can always be avoided by suitable use of
- parentheses. See <aliasing bug>, <memory leak>, <smash the stack>,
- <fandango on core>, <overrun screw>.
-
- <prepend> /pree`pend'/ [by analogy with "append"] vt. To prefix.
- Like "append", but unlike "prefix" or "suffix" as a verb, the
- direct object is always the thing being added and not the original
- word (character string, etc). No, this is *not* standard
- English, yet!
-
- <pretty pictures> n. [scientific computation] The next step up from
- <numbers>. Interesting graphical output from a program which may
- not have any real relationship to the reality the program is
- intended to model. Good for showing to <management>.
-
- <prettyprint> v. 1. To generate `pretty' human-readable output from a
- hairy internal representation; esp. used for the process of
- <grind>ing (sense #2) LISP code. 2. To format in some particularly
- slick and nontrivial way. See <grind>.
-
- <prime time> [from TV programming] n. Normal high-usage hours on a
- timesharing system; the day shift. Avoidance of prime time is a
- major reason for <night mode> hacking.
-
- <priority interrupt> [from the hardware term] n. Describes any
- stimulus compelling enough to yank one right out of <hack mode>.
- Classically used to describe being dragged away by an <SO> for
- immediate sex, but may also refer to more mundane interruptions
- such as a fire alarm going off in the near vicinity. Also ╨
- an NMI (non maskable interrupt) especially in PC-land.
-
- <profile> [UNIX] n. 1. A control file for a program, esp. a text file
- automatically read from each user's home directory and intended to
- be easily modified by the user. Used to avoid <hardcoded> choices.
- 2. A report on the amounts of time spent in each routine of a
- program, used to find and <tune> the <hot spots> in it.
-
- <Programmer's Cheer> "Shift to the left! Shift to the right! Pop
- up, push down! Byte! Byte! Byte!" A joke so old it has hair on
- it...
-
- <program> 1. n. A magic spell cast over a computer allowing it to
- turn one's input into error messages. 2. n. An exercise in
- experimental epistemology. 3. vt. To engage in a pastime similar
- to banging one's head against a wall, but with fewer opportunies
- for reward.
-
- <programming> n. The art of debugging a blank sheet of paper.
-
- <propeller head> n. Used by hackers, this is syn. with <computer
- geek>. Non-hackers sometimes use it to describe all techies.
- Prob. derives from SF fandom's tradition of propeller beanies as
- fannish insignia (though nobody actually wears them except as a
- joke).
-
- <proprietary> adj. 1. In <marketroid>-speak, superior; implies a
- product imbued with exclusive magic by the unmatched brilliance of
- their employer's hardware or software designers. 2. In the
- language of hackers and users, inferior; implies a product not
- conforming to open-systems standards, and thus one which puts the
- customer at the mercy of a vendor able to gouge freely on service
- and upgrade charges after the initial sale has locked the customer
- in.
-
- <protocol> n. As used by hackers, this never refers to niceties
- about the proper form for addressing letters to the Papal Nuncio or
- the order in which one should use the forks in a Russian-style
- place setting; hackers don't care about such things. It is used
- instead to describe any set of rules which allow different machines
- or pieces of software to coordinate with each other without
- ambiguity. It implies that there's some common message format and
- accepted set of primitives or commands that all parties involved
- understand, and that transactions among them follow predictable
- logical sequences. See also <handshaking>, <do protocol>.
-
- <prowler> [UNIX] n. A <demon> that is run periodically (typically once
- a week) to seek out and erase core files (see <core>), truncate
- administrative logfiles, nuke lost+found directories, and otherwise
- clean up the cruft that tends to pile up in the corners of a file
- system. See also <GFR>, <reaper>, <skulker>.
-
- <pseudo> /soo'doh/ [USENET] n. 1. An electronic-mail or <USENET>
- persona adopted by a human for amusement value or as a means of
- avoiding negative repercussions of his/her net.behavior; a `nom de
- USENET', often associated with forged postings designed to conceal
- message origins. Perhaps the best-known and funniest hoax of this
- type is <biff>. 2. Notionally, a <flamage>-generating AI program
- simulating a USENET user. Many flamers have been accused of
- actually being such entities, despite the fact that no AI program
- of the required sophistication exists. However, in 1989 there was
- a famous series of forged postings that used a
- phrase-frequency-based travesty generator to simulate the styles of
- several well-known flamers based on large samples of their back
- postings. A significant number of people were fooled by these, and
- the debate over their authenticity was only settled when the
- perpetrator of the hoax came publicly forward to admit the deed.
-
- <pseudoprime> n. A backgammon prime (six consecutive occupied points)
- with one point missing. This term is an esoteric pun derived from
- a mathematical method which, rather than determining precisely
- whether a number is prime (has no divisors), uses a statistical
- technique to decide whether the number is "probably" prime. A
- number that passes this test is called a pseudoprime. The hacker
- backgammon usage stems from the idea that pseudoprime is almost as
- good as a prime: it does the job of a prime until proven otherwise,
- and that probably won't happen.
-
- <pseudosuit> n. A <suit> wannabee; a hacker who's decided that he
- wants to be in management or administration and begins wearing
- ties, sport coats, and (shudder!) suits voluntarily. His
- funeral...
-
- <psychedelicware> /sie`k@-del'-ik-weir/ [Great Britain] n. Syn.
- <display hack>.
-
- <puff> vt. To decompress data that has been crunched by Huffman
- coding. At least one widely distributed Huffman decoder program
- was actually "named" `PUFF', but these days it isn't usually
- separate from the encoder. Oppose <huff>.
-
- <punched card> 1. n.obs. The signature medium of computing's
- <Stone Age>, now obsolescent outside of IBM shops. The punched
- card actually predated computers considerably, originating as a
- control device for mechanical looms. The version patented by
- Hollerith and used with mechanical tabulating machines in the 1890
- U.S. Census was a piece of cardboard about 90mm by 215mm, designed
- to fit exactly in the currency trays used for that era's larger
- dollar bills.
-
- IBM (which originated as a tabulating-machine manufacturer) married
- the punched card to computers, encoding binary information as
- patterns of small rectangular holes; one character per column, 80
- columns per card. Later, other coding schemes, sizes of card and
- hole shape were tried.
-
- The 80-column width of most character terminals is a legacy of the
- punched card; so is the size of the quick reference cards
- distributed with many varieties of computers even today. See
- <chad>, <chad box>, <eighty-column mind>, <green card>,
- <dusty deck>, <lace card>.
-
- <punt> [from the punch line of an old joke referring to American
- football: "Drop back 15 yards and punt"] vt. 1. To give up, typically
- without any intention of retrying. "Let's punt the movie
- tonight." "I was going to hack all night to get this feature in,
- but I decided to punt" may mean that you've decided not to stay up
- all night, and may also mean you're not ever even going to put in
- the feature. 2. More specifically, to give up on figuring out what
- the <Right Thing> is and resort to an inefficient hack.
-
- <Purple Book> n. The `System V Interface Definition'. The covers
- of the first editions were an amazingly nauseating shade of
- off-lavender. See also <Red Book>, <Blue Book>, <Green Book>,
- <Silver Book>, <Orange Book>, <White Book>, <Pink-Shirt Book>,
- <Dragon Book>, <Aluminum Book>.
-
- <push> [based on the stack operation that puts the current
- information on a stack, and the fact that procedure return
- addresses are saved on the stack] Also PUSH or PUSHJ /push-jay/,
- based on the PDP-10 procedure call instruction. 1. To put
- something onto a <stack> or <pdl>. If a person says something
- has been pushed onto his stack, he means yet another thing has been
- added to the list of things hanging over his head for him to do.
- 2. vi. To enter upon a digression, to save the current discussion
- for later. Antonym of <pop>; see also <stack>, <pdl>.
-
- {= Q =}
-
- <quad> n. 1. Two bits; syn. for <quarter>, <crumb>, <tayste>.
- 2. The rectangle or box glyph used in the APL language for various
- arcane purposes mostly related to I/O. Ex-Ivy-Leaguers and
- Oxbridge types are said to associate it with nostalgic memories of
- dear old University.
-
- <quadruple bucky> n., obs. On a <space-cadet keyboard>, use of all
- four of the shifting keys control, meta, hyper, and super while
- typing a character key. This was very difficult to do! One
- accepted technique was to press the left-control and left-meta keys
- with your left hand, the right-control and right-meta keys with
- your right hand, and the fifth key with your nose. Thus, this
- combination was very seldom used in practice, because when you
- invent a new command you usually assign it to some character that
- is easier to type. If you want to imply that a program has
- ridiculously many commands or features, you can say something like
- "Oh, the command that makes it spin all the tapes while whistling
- Beethoven's Fifth Symphony is quadruple-bucky-cokebottle". See
- <double bucky>, <bucky bits>, <cokebottle>.
-
- <quantum bogodynamics> /kwon'tm boh`goh-die-nam'iks/ n. Theory which
- characterizes the universe in terms of bogon sources (such as
- politicians, used-car salesmen, TV evangelists, and <suit>s in
- general), bogon sinks (such as taxpayers and computers), and
- bogosity potential fields. Bogon absorption, of course, causes
- human beings to behave mindlessly and machines to fail (and may
- cause them to emit secondary bogons as well); however, the precise
- mechanics of the bogon-computron interaction are not yet understood
- and remain to be elucidated. Quantum bogodynamics is most
- frequently invoked to explain the sharp increase in hardware and
- software failures in the presenae of suits; the latter emit bogons
- which the former absorb. See <bogon>, <computron>, <suit>.
-
- <quarter> n. Two bits; syn. <tayste>, <crumb>. The term comes
- from the `pieces of eight' famed in pirate movies, Spanish gold
- pieces that could be broken into eight pie-slice-shaped `bits' to
- make change. Early in the U.S.'s history each of these `bits' was
- considered worth about 12.5 cents. Usage: rare. See also
- <nickle>, <nybble>, <byte>.
-
- <ques> /kwess/ 1. n. The question mark character (`?', ASCII
- 0111111). 2. interj. What? Also frequently verb-doubled as
- "Ques ques?" See <wall>.
-
- <quick and dirty> adj. A <crock> put together under time or user
- pressure. Used esp. when you want to convey that you think the
- fast way might lead to trouble further down the road. "I can have
- a quick and dirty fix in place tonight, but I'll have to rewrite
- the whole module to solve the underlying design problem ". See
- also <kluge>.
-
- <qux> /kwuhks/ The fourth of the standard metasyntactic variables,
- after <baz> and before the quuu*x series. See <foo>, <bar>,
- <baz>, <quux>. Note that this appears to a be recent mutation
- from <quux>, and that many versions of the standard series just
- run <foo>, <bar>, <baz>, <quux>, ...
-
- <quux> /kwuhks/ [invented by Steele] Mythically, from the Latin
- semi-deponent verb quuxo, quuxare, quuxandum iri; noun form
- variously `quux' (plural `quuces', anglicized to `quuxes')
- and `quuxu' (genitive plural is `quuxuum', for four u-letters
- out of seven total).] 1. Originally, a meta-word like <foo> and
- <foobar>. Invented by Guy Steele for precisely this purpose when
- he was young and naive and not yet interacting with the real
- computing community. Many people invent such words; this one seems
- simply to have been lucky enough to have spread a little. In an
- eloquent display of poetic justice, it has returned to the
- originator in the form of a nickname, as punishment for inventing
- this bletcherous word in the first place. 2. interj. See <foo>;
- however, denotes very little disgust, and is uttered mostly for the
- sake of the sound of it. 3. Guy Steele in his persona as `The
- Great Quux', which is somewhat infamous for light verse and for
- the `Crunchly' cartoons. 4. quuxy: adj. Of or pertaining to a
- quux.
-
- <QWERTY> /kwer'tee/ [from the keycaps at the upper left] adj.
- Pertaining to a standard English-language typewriter keyboard, as
- opposed to Dvorak or foreign-language layouts or a <space-cadet
- keyboard> or APL keyboard.
-
- {= R =}
-
- <rain dance> n. 1. Any ceremonial action taken to correct a hardware
- problem, with the expectation that nothing will be accomplished.
- This especially applies to reseating printed circuit boards,
- reconnecting cables, etc. "I can't boot up the machine. We'll
- have to wait for Greg to do his rain dance." 2. Any arcane
- sequence of actions performed with computers or software in order
- to achieve some goal; the term is usually restricted to rituals
- which include both an <incantation> or two and physical activity
- or motion. Compare <magic>, <voodoo programming>, <black
- art>.
-
- <random> adj. 1. Unpredictable (closest to mathematical definition);
- weird. "The system's been behaving pretty randomly." 2.
- Assorted; undistinguished. "Who was at the conference?" "Just
- a bunch of random business types." 3. Frivolous; unproductive;
- undirected (pejorative). "He's just a random loser." 4.
- Incoherent or inelegant; not well organized. "The program has a
- random set of misfeatures." "That's a random name for that
- function." "Well, all the names were chosen pretty randomly."
- 5. Gratuitously wrong, i.e., poorly done and for no good apparent
- reason. For example, a program that handles file name defaulting
- in a particularly useless way, or an assembler routine that could
- easily have been coded using only three registers, but randomly
- uses seven for assorted non-overlapping purposes, so that no one
- else can invoke it without first saving four extra registers. 6.
- In no particular order, though deterministic. "The I/O channels
- are in a pool, and when a file is opened one is chosen randomly."
- n. 7. A random hacker; used particularly of high school students
- who soak up computer time and generally get in the way. 8.
- (occasional MIT usage) One who lives at Random Hall. See also <J.
- Random>, <some random X>.
-
- <random numbers> n. When one wishes to specify a large but random
- number of things, and the context is inappropriate for <N>, certain
- numbers are preferred by hacker tradition (that is, easily
- recognized as placeholders). These include
-
- 17 Long described at MIT as `the least random number', see 23.
- 23 Sacred number of Eris, Goddess of Discord (along with 17 & 5).
- 42 The Answer to the Question of Life, the Universe and Everything.
- 69 From the sexual act. This one was favored in MIT's ITS culture.
- 105 69 hex = 105 dec, and 69 dec = 105 oct
- 666 The Number of the Beast.
-
- For further enlightenment, consult the `Principia Discordia',
- `The Hitchhiker's Guide To The Galaxy', any porn movie, and the
- Christian Bible's `Book Of Revelations'. See also
- <Discordianism> or consult your pineal gland.
-
- <randomness> n. An unexplainable misfeature; gratuitous inelegance.
- Also, a <hack> or <crock> which depends on a complex combination of
- coincidences (or rather, the combination upon which the crock
- depends for its accidental failure to malfunction). "This hack
- can output characters 40-57 by putting the character in the
- accumulator field of an XCT and then extracting 6 bits --- the low
- two bits of the XCT opcode are the right thing." "What
- randomness!"
-
- <rape> vt. To (metaphorically) screw someone or something, violently;
- in particular, to destroy a program or information irrecoverably
- Usage: often used in describing file-system damage. "So-and-so
- was running a program that did absolute disk I/O and ended up
- raping the master directory."
-
- <rare> [UNIX] adj. CBREAK mode (character-by-character with interrupts
- enabled). Distinguished from "raw" and "cooked"; the phrase
- "half-cooked (rare?)" is used in the V7/BSD manuals to describe
- the mode. Usage: rare.
-
- <raster blaster> n. [Cambridge] Specialized hardware for <bitblt>
- operations. Allegedly inspired by analogy with "Rasta Blasta",
- British slang for the sort of portable stereo/radio/tapedeck
- Americans call a `boom box' or `ghetto blaster'.
-
- <raster burn> n. Eyestrain brought on by too many hours of looking at
- low-res, poorly tuned or glare-ridden monitors, esp. graphics
- monitors. See <terminal illness>.
-
- <rat belt> n. A cable tie, esp. the sawtoothed, self-locking plastic
- kind that you can only remove by cutting (as opposed to a random
- twist of wire or a baggie tie or one of those humongous metal clip
- frobs). Small cable ties are "mouse belts".
-
- <rave> [WPI] vi. 1. To persist in discussing a specific subject. 2. To
- speak authoritatively on a subject about which one knows very
- little. 3. To complain to a person who is not in a position to
- correct the difficulty. 4. To purposely annoy another person
- verbally. 5. To evangelize. See <flame>. Also used to describe a
- less negative form of blather, such as friendly bullshitting.
- <Rave> differs slightly from <flame> in that <rave> implies that it
- is the manner or persistence of speaking that is annoying, while
- <flame> implies somewhat more strongly that the subject matter is
- annoying as well.
-
- <rave on!> imp. Sarcastic invitation to continue a <rave>, often by
- someone who wishes the raver would get a clue but realizes this is
- unlikely.
-
- <ravs> /ravz/, also CHINESE RAVS n. Kuo-teh. A Chinese appetizer,
- known variously in the plural as dumplings, pot stickers (the
- literal translation of kuo-teh) and (around Boston) `Peking
- Ravioli'. The term "rav" is short for "ravioli", which among
- hackers always means the Chinese kind rather than the Italian kind.
- Both consist of a filling in a pasta shell, but the Chinese kind
- uses a thinner pasta and is cooked differently, either by steaming
- or frying. A rav or dumpling can be steamed or fried, but a
- potsticker is always the fried kind (so called because it sticks to
- the frying pot and has to be scraped off). "Let's get
- hot-and-sour soup and three orders of ravs." See also ORIENTAL
- FOOD.
-
- <read-only user> n. Describes a <luser> who uses computers almost
- exclusively for reading USENET, bulletin boards and email, as
- opposed to writing code or purveying useful information. See
- <twink>, <terminal junkie>.
-
- <README file> n. By convention, the top-level directory of a UNIX
- source distribution always contains a file named `README' (or
- READ.ME, or (rarely) ReadMe or some other variant) which is a
- hacker's-eye introduction containing a pointer to more detailed
- documentation, credits, miscellaneous revision history notes, etc.
- When asked, hackers invariably relate this to the famous scene in
- Lewis Carroll's `Alice In Wonderland' in which Alice confronts
- magic food with signs posted over it that say `Eat Me' and `Drink
- Me'.
-
- <real estate> n. May be used for any critical resource measured in units
- of area. Most frequently used of `chip real estate', the area
- available for logic on the surface of an integrated circuit (see
- also <nanoacre>). May also be used of floor space in a
- <dinosaur pen> or even space on a crowded desktop (whether
- physical or electronics).
-
- <real operating system> n. Whatever that a given user is accustomed
- to, and subject to wild variation. People from the academic
- community are likely to issue comments like "System V? Why don't
- you use a *real* operating system?", people from the
- commercial/industrial UNIX sector are known to complain, "BSD? Why
- don't you use a *real* operating system?", and people from IBM
- probably think, "UNIX? Why don't you use a *real* operating
- system?" See <holy wars>, <religious issues>, <proprietary>.
-
- <real programmer> [indirectly, from the book `Real Men Don't
- Eat Quiche'] n. A particular sub-variety of hacker, one possessed
- of a flippant attitude towards complexity that is arrogant even
- when justified by experience. The archetypal `real programmer'
- likes to program on the <bare metal>, and is very good at same;
- he remembers the binary opcodes for every machine he's every
- programmed; thinks that HLLs are sissy; and he uses a debugger to
- edit his code because full-screen editors are for wimps. Real
- Programmers aren't satisfied with code that hasn't been <bum>med
- into a state of <tense>ness just short of rupture. Real
- Programmers never use comments or write documentation; "If it was
- hard to write", says the Real Programmer, "it should be hard to
- understand." Real Programmers can make machines do things that
- were never in their spec sheets; in fact, they're seldom really
- happy unless doing so. A Real Programmer's code can awe you with
- its fiendish brilliance even as it appalls by its level of
- crockishness. Real Programmers live on junk food and coffee, hang
- line-printer art on their walls, and terrify the crap out of other
- programmers --- because someday, somebody else might have to try to
- understand their code in order to change it. Their successors
- generally consider it a <Good Thing> that there aren't many Real
- Programmers around any more. For a famous (and somewhat more
- positive) portrait of a Real Programmer, see `The Story of
- Mel' in Appendix A.
-
- <Real Soon Now> [orig. from SF's fanzine community, popularized by
- Jerry Pournelle's BYTE column] adj. 1. Supposed to be available
- (or fixed, or cheap, or whatever) real soon now according to
- somebody, but the speaker is quite skeptical. 2. When the
- gods/fates/other time commitments permit the speaker to get to it.
- Often abbreviated RSN.
-
- <real time> adv. Doing something while people are watching or waiting.
- "I asked her how to find the calling procedure's program counter
- on the stack and she came up with an algorithm in real time."
-
- <real user> n. 1. A commercial user. One who is paying `real' money
- for his computer usage. 2. A non-hacker. Someone using the system
- for an explicit purpose (research project, course, etc.). See
- <user>. Hackers who are also students may also be real users. "I
- need this fixed so I can do a problem set. I'm not complaining out
- of randomness, but as a real user." See also <luser>.
-
- <Real World> n. 1. In programming, those institutions at which
- programming may be used in the same sentence as FORTRAN, COBOL,
- RPG, <IBM>, etc. Places where programs do such commercially
- necessary but intellectually uninspiring things as compute payroll
- checks and invoices. 2. To programmers, the location of
- non-programmers and activities not related to programming. 3. A
- universe in which the standard dress is shirt and tie and in which
- a person's working hours are defined as 9 to 5. 4. The location of
- the status quo. 5. Anywhere outside a university. "Poor fellow,
- he's left MIT and gone into the real world." Used pejoratively by
- those not in residence there. In conversation, talking of someone
- who has entered the real world is not unlike talking about a
- deceased person. See also <fear and loathing>, <mundane>, and
- <uninteresting>.
-
- <reality check> n. 1. The simplest kind of test of software or
- hardware; doing the equivalent of asking it what `2 + 2' and
- seeing if you get 4. The equivalent of q <smoke test> for
- software. 2. The act of letting a <real user> try out prototype
- software. Compare <sanity check>.
-
- <reaper> n. A <prowler> which GFRs files (see <GFR>). A file removed
- in this way is said to have been `reaped'.
-
- <rectangle slinger> n. See <polygon pusher>.
-
- <recursion> n. See <recursion>. See also <tail recursion>.
-
- RECURSIVE ACRONYMS pl.n. A hackish (and especially MIT) tradition is
- to choose acronyms which refer humorously to themselves or to other
- acronyms. The classic examples were two MIT editors called EINE
- ("EINE Is Not EMACS") and ZWEI ("ZWEI Was EINE Initially").
- More recently, <GNU> (q.v., sense #1) is said to stand for "GNU's
- Not UNIX!"
-
- <Red Book> n. 1. Informal name for one of the three standard
- references on PostScript (`PostScript Language Reference
- Manual', Adobe Systems, Addison-Wesley 1985 QA76.73.P67P67, ISBN
- 0-201-10174-2); the others are known as the <Green Book> and <Blue
- Book>. 2. Informal name for one of the three standard references
- on Smalltalk: `Smalltalk-80: The Interactive Programming
- Environment', Adele Goldberg, Addison-Wesley 1984, QA76.8.S635G638,
- ISBN 0-201-11372-4 (this is also associated with blue and green
- books). 3. Any of the 1984 standards issued by the CCITT 8th
- plenary assembly. Until now, these have changed color each review
- cycle (1988 was <Blue Book>, 1992 will be <Green Book>); however,
- it is rumored that this convention is going to be dropped before
- 1992. These include, among other things, the X.400 email spec and
- the Group 1 through 4 fax standards. 4. The new version of the
- <Green Book> (sense #4), "IEEE 1003.1-1990", aka "ISO 9945-1",
- is (because of the color and the fact that it is printed on A4
- paper), known in the USA as "The Ugly Red Book That Won't Fit On
- The Shelf", and in Europe as "The Ugly Red Book That's A Sensible
- Size". See also <Green Book>, <Blue Book>, <Purple Book>, <Silver
- Book>, <Orange Book>, <White Book>, <Pink-Shirt Book>, <Dragon
- Book>, <Aluminum Book>.
-
- <regexp> /reg'eksp/ [UNIX] n. (alt "regex" or "reg-ex") 1.
- Common written and spoken abbreviation for "regular
- expression", one of the wildcard patterns used, e.g., by UNIX
- utilities such as `grep(1)', `sed(1)' and `awk(1)'.
- These use conventions similar to but more elaborate than those
- described under <glob>. For purposes of this File, it is
- sufficient to note that regexps also allow complemented character
- sets using `^' and ranges in character sets using `-';
- thus, one can specify any non-alphabetic character with
- `[^A-Za-z]'. 2. Name of a well-known PD regexp-handling
- package in portable C, written by revered USENETter Henry Spencer
- (henry@zoo.toronto.edu).
-
- <reincarnation, cycle of> n. Term used to refer to a well-known effect
- whereby function in a computing system family is migrated out to
- special purpose peripheral hardware for speed, then the peripheral
- evolves towards more computing power as it does its job, then
- somebody notices that it's inefficient to support two asymmetrical
- processors in the architecture and folds the function back into the
- main CPU, at which point the cycle begins again. Several
- iterations of this cycle have been observed in graphics processor
- design, and at least one or two in communications and
- floating-point processors. Also known as "the Wheel of Life",
- "the Wheel of Samsara", and other variations of the basic
- Hindu/Buddhist theological idea.
-
- <religious issues> n. Questions which seemingly cannot be raised
- without touching off <holy wars>, such as "What is the best
- operating system (or editor, language, architecture, shell, mail
- reader, news reader)?" and "What about that Heinlein guy, eh?".
- See also <theology>, <bigot>.
-
- This entry is an example of <ha ha only serious>. People
- actually develop the most amazing and religiously intense attachments
- to their tools, even when the tools are intangible. The most
- constructive thing one can do when one stumbles into the crossfire
- is mumble <Get a life!> and leave --- unless of course one's
- *own* unassailably rational and obviously correct choices are
- being slanged...
-
- <reinvent the wheel> v. To design or implement a tool equivalent to
- an existing one, with the implication that doing so is silly or a
- waste of time. This is frequently a valid criticism; but
- automobiles don't use wooden rollers, either, and some kinds of
- wheel have to be re-invented many times before you get it right.
-
- <replicator> n. Any construct that acts to produce copies of itself;
- this could be a living organism, an idea (see <meme>), a program
- (see <worm>, <wabbit> and <virus>), a pattern in a cellular
- automaton (see <life>, sense #1), or (speculatively) a robot or
- <nanobot>.
-
- <reply> n. See <followup>.
-
- <restriction> n. A <bug> or design error that limits a program's
- capabilities, and which is sufficiently egregious that nobody can
- quite work up enough nerve to describe it as a <feature>. Often
- used (esp. by <marketroid> types) to make it sound as though some
- crippling bogosity had been intended by the designers all along, or
- was forced upon them by arcane considerations no mere user could
- possibly comprehend (these claims are almost invariably false).
-
- <retcon> /ret'kon/ ["retroactive continuity", from USENET's
- rec.arts.comics] 1. n. the common situation in pulp fiction (esp.
- comics, soaps) where a new story `reveals' new things about events
- in previous stories, usually leaving the `facts' the same (thus
- preserving continuity) while completely changing their
- interpretation. E.g., revealing that a whole season's episodes of
- Dallas was a dream was a retcon. 2. vt. To write such a story
- about (a character or fictitious object). Thus, "Byrne has
- retconned Superman's cape so that it is no longer unbreakable".
- 3. vi. Used of something `transformed' in this way ---
- "Marvelman's old adventures were retconned into synthetic
- dreams", "Swamp Thing was retconned from a transformed person
- into a sentient vegetable."
-
- [This is included because it's a good example of hackish linguistic
- innovation in a field completely unrelated to computers. The word
- `retcon' will probably spread through comics fandom and lose its
- association with hackerdom within a couple of years; for the
- record, it started here. --- ESR]
-
- <retrocomputing> /ret'-roh-k@m-pyoo'ting/ n. Refers to emulations
- of way-behind-the state-of-the-art hardware or software, or
- implementations of never-was-state-of-the-art; esp. if such
- implementations are elaborate practical jokes and/or parodies of
- more `serious' designs. Perhaps the most widely distributed
- retrocomputing utility was the `pnch(6)' or `bcd(6)'
- program on V7 and other early UNIX versions, which would accept up
- to 80 characters of text argument and display the corresponding
- pattern in Hollerith <card> code. Other well-known retrocomputing
- hacks have included the programming language <INTERCAL>, a
- <JCL>-emulating shell for UNIX, the card-punch-emulating editor named
- 029, and various elaborate PDP-11 hardware emulators and RT-11 OS
- emulators written just to keep an old, sourceless <Zork> binary
- running.
-
- <retrofit> v. To graft some pieces from newer technology onto a
- piece of software or hardware representing an older one. This
- often results in a crocky, inelegant compromise between new and
- old. The term implies use of the older stuff in ways the designers
- didn't anticipate. Some of the bizarre things done during the
- nineteen-seventies to old-style batch operating systems like
- <GECOS> and IBM's OS/360 in order to make them crudely
- interactive stand out as examples. More recently, personal
- computer hackers have frequently been known to graft new floppy and
- hard-disk devices onto obsolete hardware in order to preserve
- software written for a particular processor, screen and keyboard
- combination.
-
- <RFC> /ahr ef see/ n. Request For Comment. One of a long-established
- series of numbered Internet standards widely followed by commercial
- and PD software in the Internet and UNIX communities. Perhaps the
- single most influential one has been RFC-822 (the Internet
- mail-format standard). The RFCs are unusual in that they are
- floated by technical experts acting on their own initiative and
- reviewed by the Internet at large, rather than formally promulgated
- through an institution such as ANSI. For this reason they remain
- known as RFCs even onae adopted.
-
- <RFE> n. 1. Request For Enhancement. 2. [Bellcore, Sun] Radio Free
- Ethernet, a system (originated by Peter Langston) for broadcasting
- audio among Sun SPARCstations over the ethernet.
-
- <rib site> n. A machine which has an on-demand high-speed link to a
- <backbone site> and serves as a regional distribution point for
- lots of third-party traffic in email and USENET news. Compare
- <leaf site>, <backbone site>.
-
- <rice box> [from ham radio slang] n. Any Asian-made commodity
- computer, esp. an 8086, 80286, 80386 or 80486-based machine built
- to IBM PC-compatible ISA or EISA-bus standards.
-
- <Right Thing, The> n. That which is *obviously* the correct or
- appropriate thing to use, do, say, etc. Often capitalized, always
- emphasized in speech as though capitalized. Use of this term often
- implies that in fact reasonable people may disagree. "Never let
- your conscience keep you from doing the right thing!" "What's
- the right thing for LISP to do when it reads (a mod 0)? Should it
- return a, or give a divide-by-zero error?" Antonym: <Wrong
- Thing>.
-
- <RL> [MUD community] n. Real Life. "Firiss laughs in RL" means
- Firiss's player is laughing.
-
- <roach> [Bell Labs] vt. To destroy, esp. of a data structure. Hardware
- gets <toast>ed, software gets roached.
-
- <robust> adj. Said of a system which has demonstrated an ability to
- recover gracefully from the whole range of exception conditions in
- a given environment. One step below <bulletproof>. Compare
- <smart>, oppose <brittle>.
-
- <rococo> adj. <Baroque> in the extreme. Used to imply that a
- program has become so encrusted with the software equivalent of
- gold leaf and curlicues that they have completely swamped the
- underlying design. Called after the later and more extreme forms
- of Baroque architecture and decoration prevalent during the
- mid-1700s in Europe.
-
- <rogue> [UNIX] n. Dungeons-And-Dragons-like game using character
- graphics written under BSD UNIX and subsequently ported to other
- UNIX systems. The original BSD `curses(3)' screen-handling
- package was hacked together by Ken Arnold to support
- `rogue(6)' and has since become one of UNIX's most important
- and heavily used application libraries. Nethack, Omega, Larn and
- an entire subgenre of computer dungeon games all took off from the
- inspiration provided by `rogue(6)'. See <hack>.
-
- <root> n. [UNIX] 1. The "superuser" account that ignores
- permission bits, user number zero on a UNIX system. This account
- has the user name `root'. 2. The top node of the system directory
- structure (home directory of the root user). 3. By extension, the
- privileged system-maintenance login on any OS. 4. Thus, <root
- mode>: Syn. with <wizard mode> or <wheel mode>. Like these,
- it is often generalized to describe privileged states in systems
- other than OSs. 5. <go root>: to temporarily enter <root mode>
- in order to perform a privileged operation. This use is deprecated
- in Australia, where v. `root' is slang for "to have sex with".
-
- <room-temperature IQ> [IBM] 80 or below. Used in describing the
- expected intelligence range of the <luser>. As in "Well, but
- how's this interface gonna play with the room-temperature IQ
- crowd?" See <drool-proof paper>. This is a much more insulting
- phrase in countries that use Celsius thermometers...
-
- <rot13> /rot ther'teen/ [USENET, from `rotate alphabet 13 places']
- n.,v. The simple Caesar-cypher encryption replaces each English
- letter with the one 13 places forward or back along the alphabet,
- so that "The butler did it!" becomes "Gur ohgyre qvq vg!" Most
- USENET news reading and posting programs include a rot13 feature.
- It is used as if to enclose the text in a sealed wrapper that the
- reader must choose to open, for posting things that might offend
- some readers, answers to puzzles, or discussion of movie plot
- surprises.
-
- <rotary debugger> [Commodore] n. Essential equipment for those late
- night or early morning debugging sessions. Mainly used as
- sustenance for the hacker. Comes in many decorator colors such as
- Sausage, Pepperoni, and Garbage. See <pizza, ANSI standard>.
-
- <RSN> adj. See <Real Soon Now>.
-
- <RTFAQ> /ahr-tee-eff-ay-kyoo/ [USENET, by analogy with <RTFM>]
- imp. Abbrev. for `Read the FAQ!', an exhortation that the person
- being addressed ought to read the newsgroup's <FAQ list> before
- posting questions.
-
- <RTFM> /ahr-tee-ef-em/ [UNIX] imp. Abbrev. for `Read The Fucking Manual'.
- 1. Used by GURUs to brush off questions they consider trivial or
- annoying. Compare <Don't do that, then!>. 2. Used when reporting
- a problem to indicate that you aren't just asking out of
- <randomness>. "No, I can't figure out how to interface UNIX to my
- toaster and yes I have RTFM." Unlike sense #1 this use is
- considered polite. See also <RTFAQ>, <RTM>.
-
- <RTI> /ahr-tee-ie/ interj. The mnemonic for the "return from
- interrupt" instruction on the 6502 and Z80. Equivalent to "Now,
- where was I?" or used to end a conversational digression. See
- <POP>, <POPJ>.
-
- <RTM> /ahr-tee-em/ [USENET, acronym for `Read The Manual'] Politer
- variant of <RTFM>.
-
- <rude> [WPI] adj. 1. (of a program) Badly written. 2. Functionally
- poor, e.g. a program which is very difficult to use because of
- gratuitously poor (random?) design decisions. See <cuspy>.
-
- <runes> pl.n. 1. Anything that requires <heavy wizardry> or <black
- art> to <parse>; core dumps, JCL commands, or even code in a
- language you don't have the faintest idea how to read. Compare
- <casting the runes>. 2. Special display characters (for example,
- the high-half graphics on an IBM PC).
-
- <runic> adj. Syn. <obscure>. VMS fans sometimes refer to UNIX as
- `Runix'; UNIX fans return the compliment by expanding VMS to
- `Vachement Mauvais Systeme' (French, lit. "Cowlike Bad System").
-
- <rusty iron> n. Syn. <tired iron>. It has been claimed that this
- is the inevitable fate of <water MIPS>.
-
- <rusty memory> n. Mass-storage that uses iron-oxide-based magnetic
- media (tape and the pre-Winchester removable disk packs used in
- <washing machines>). Compare <donuts>.
-
- {= S =}
-
- <s/n ratio> n. (also "s:n ratio"). See <signal-to-noise
- ratio>.
-
- <sacred> adj. Reserved for the exclusive use of something (a
- metaphorical extension of the standard meaning). "Register 7 is
- sacred to the interrupt handler." Often means that anyone may
- look at the sacred object, but clobbering it will screw whatever it
- is sacred to. Example: The comment "Register 7 is sacred to the
- interrupt handler" appearing in a program would be interpreted by
- a hacker to mean that one part of the program, the `interrupt
- handler', uses register 7, and if any other part of the program
- changes the contents of register 7 dire consequences are likely to
- ensue.
-
- <sadistics> /s@-dis'tiks/ n. University slang for statistics and
- probability theory, often used by hackers.
-
- <saga> [WPI] n. A cuspy but bogus raving story dealing with N random
- broken people.
-
- <sagan> [from Carl Sagan's TV series on PBS, think `Billions and
- Billions'] n. A large quantity of anything. "There's a sagan
- different ways to tweak EMACS." "The US Government spends sagans
- on military hardware."
-
- <SAIL> n. Stanford University Artificial Intelligence Lab. An
- important site in the early development of LISP; with the MIT AI
- LAB, CMU and the UNIX community, one of the major founts of hacker
- culture traditions. The SAIL machines were shut down in late May
- 1990, scant weeks after the MIT AI lab's ITS cluster went down for
- the last time.
-
- <salescritter> /sayls'kri`tr/ n. Pejorative hackerism for a computer
- salesperson. Hackers tell the following joke:
-
- Q. What's the difference between a used car dealer and a computer
- salesman?
- A. The used car dealer knows he's lying.
-
- This reflects the widespread hacker belief that salescritters are
- self-selected for stupidity (after all, if they had brains and the
- inclination to use them they'd be in programming). The terms
- "salesthing" and "salesdroid" are also common. Compare
- <marketroid>, <suit>.
-
- <salt mines> n. Dense quarters housing large numbers of programmers
- working long hours on grungy projects, with some hope of seeing the
- end of the tunnel in N years. Noted for their absence of sunshine.
- Compare <playpen>, <sandbox>.
-
- <same-day-service> n. Ironic term is used to describe slow response
- time, particularly with respect to <MS-DOS> system calls. Such
- response time is a major incentive for programmers to write
- programs that are not <well-behaved>.
-
- <sandbender> [IBM] n. A person involved with silicon lithography and
- the physical design of chips. Compare <ironmonger>, <polygon
- pusher>.
-
- <sandbox, the> n. Common term for the R&D department at many
- software and computer companies (where hackers in commercial
- environments are likely to be found). Half-derisive, but reflects
- the truth that research is a form of creative play. Compare
- <playpen>.
-
- <sanity check> n. The act of checking a piece of code for completely
- stupid mistakes. Implying that the check is to make sure the
- author was sane when it was written i.e. if a piece of scientific
- software relied on a particular formula and was giving unexpected
- results, one might first look at the nesting of parentheses/coding
- of the formula, as a <sanity check>, before looking at the more
- complex I/O or data structure manipulation routines. Compare
- <reality check>.
-
- <say> vt. In some contexts, to type to a terminal. "To list a
- directory verbosely, you have to say `ls -l'". Tends to imply
- a carriage-return-terminated command (a `sentence'). A computer
- may also be said to `say' things to you even if it doesn't have a
- speech synthesizer, by displaying them on a terminal in response to
- your commands. Hackers find it odd that this usage confuses other
- people.
-
- SCIENCE-FICTION FANDOM n. Another voluntary subculture having a very
- heavy overlap with hackerdom; most hackers read SF and/or fantasy
- fiction avidly, and many go to `cons' (SF conventions) or are
- involved in fandom-connected activities like the Society for
- Creative Anachronism. Some hacker slang originated in SF fandom;
- see <defenestration>, <great-wall>, <cyberpunk>, <h infix>, <ha ha
- only serious>, <IMHO>, <mundane>, <neep-neep>, <Real Soon Now>.
- Additionally, the jargon terms <cowboy>, <cyberspace>, <de-rez>,
- <go flatline>, <ice>, <virus>, <wetware>, <wirehead> and <worm>
- originated in SF itself.
-
- <scram switch> [from the nuclear power industry] n. An
- emergency-power-off switch (see <Big Red Switch>), esp. one
- positioned to be easily hit by evacuating personnel. In general,
- this is *not* something you frob lightly; these are installed
- in a <dinosaur pen> for use in case of electrical fire or in case
- some luckless <field servoid> should put himself between across
- 120 volts while tinkering.
-
- <scratch> 1. [from "scratchpad"] adj. A device or recording medium
- attached to a machine for testing or temporary-use purposes; one
- which can be <scribbled> on without loss. Usually in the combining
- forms "scratch memory", "scratch disk", "scratch tape",
- "scratch volume". See <scratch monkey>. 2. [primarily IBM] vt. To
- delete (as in a file).
-
- <scratch monkey> n. As in, "Before testing or reconfiguring, always
- mount a", a proverb used to advise caution when dealing with
- irreplaceable data or devices. Used to refer to any expendable
- device or scratch volume hooked to a computer, in memory of Mabel,
- the Swimming Wonder Monkey who expired when a computer vendor PM'd
- a machine which was regulating the gas mixture that the monkey was
- breathing at the time. See Appendix A. See <scratch>.
-
- <screw> [MIT] n. A <lose>, usually in software. Especially used for
- user-visible misbehavior caused by a bug or misfeature.
-
- <screwage> /skroo'@j/ n. Like <lossage> but connotes that the
- failure is due to a designed-in misfeature rather than a simple
- inadequacy or mere bug.
-
- <scribble> n. To modify a data structure in a random and
- unintentionally destructive way. "Bletch! Somebody's
- disk-compactor program went berserk and scribbled on the i-node
- table." "It was working fine until one of the allocation routines
- scribbled on low core." Synonymous with <trash>; compare <mung>,
- which conveys a bit more intention, and <mangle>, which is more
- violent and final.
-
- <script> n. 1. A program written in <shell>; a "batch file"
- (see <batch>). A set of instructions which can be fed to a
- machine as though the user had typed them. 2. A transcript of
- some interaction with a machine.
-
- <scrog> /skrog/ [Bell Labs] vt. To damage, trash or corrupt a data
- structure. "The cblock got scrogged." Also reported as
- `skrog', and ascribed to "The Wizard of Id" comix. Equivalent
- to <scribble> or <mangle>
-
- <scrozzle> /skroz'l/ vt. Used when a self-modifying code segment runs
- incorrectly and corrupts the running program, or vital data. "The
- damn compiler scrozzled itself again!"
-
- <SCSI> /ess see ess ie/ n. Small Computer System Interface is a
- system-level interface between a computer and intelligent devices.
- Typically annotated in literature with `sexy' (/sek'see/) and
- `scuzzy' (/skuhz'zee/) as pronunciation guides...the latter being
- the predominating form, much to the dismay of the designers and
- their marketing people.
-
- <search-and-destroy mode> n. Hackerism for the search-and-replace
- facility in an editor, so called because an incautiously chosen
- match pattern can cause <infinite> damage.
-
- <second-system effect> n. When designing the successor to a relatively
- small, elegant and successful system, there is a tendency to become
- grandiose in one's success and perpetrate an <elephantine>
- feature-laden monstrosity. The term was first used by Fred Brooks
- in his classic book `The Mythical Man-Month'. It described the
- jump from a set of nice, simple, operating monitors on the IBM 70xx
- series to OS/360 on the 360 series.
-
- <segfault> n.,vi. Syn for <segment>, <seggie>.
-
- <seggie> /seg'ee/ [UNIX] n. Shorthand for <segmentation fault>
- reported from Britain.
-
- <segment> /seg'ment/ vi. To experience a <segmentation fault>.
- Confusingly, this is often accented on the first syllable rather
- than on the second as for mainstream v. segment; this is because
- it's actually a noun shorthand that has been verbed.
-
- <segmentation fault (or violation)> n. [UNIX] 1. Error in which a
- running program attempts to access memory not allocated to it and
- <core dump> with a segment violation error. 2. To lose a train of
- thought or a line of reasoning. Also uttered as an exclamation at
- the point of befuddlement.
-
- <segv> /seg'vee/ n.,vi. Yet another synonym for <segmentation fault>.
-
- <self-reference> n. See <self-reference>.
-
- <selvage> /sel'v@j/ [from sewing] n. See <chad> (sense #1).
-
- <semi> /se'mee/ 1. n. Abbreviation for `semicolon', when speaking.
- "Commands to <grind> are prefixed by semi-semi-star" means that
- the prefix is `;;*', not 1/4 of a star. 2. Prefix with words
- such as `immediately', as a qualifier. "When is the system
- coming up?" "Semi-immediately." (That is, maybe not for an
- hour). "We did consider that possibility semi-seriously." See
- also <infinite>.
-
- <senior bit> [IBM] n. Syn. <meta bit>.
-
- <server> n. A kind of <daemon> which performs a service for the
- requester, which often runs on a computer other than the one on
- which the server runs. A particularly common term on the Internet,
- which is rife with `name servers' `domain servers' `news
- servers' `finger servers' and the like.
-
- <SEX> [Sun User's Group & elsewhere] n. 1. Software EXchange. A
- technique invented by the blue-green algae hundreds of millions of
- years ago to speed up their evolution, which had been terribly slow
- up until then. Today, SEX parties are popular among hackers and
- others. 2. The rather Freudian mnemonic often used for Sign Extend,
- a machine instruction found in many architectures. Amusingly, the
- Intel 8048 (the microcontroller used in IBM PC keyboards) is
- missing straight SEX but has logical-or and logical-and
- instructions ORL and ANL.
-
- <shareware> n. <freeware> for which the author requests some payment,
- usually in the accompanying documentation files or in an
- announcement made by the software itself. Such payment may or may
- not buy additional support or functionality. See <guiltware>,
- <crippleware>.
-
- <shelfware> n. Software purchased on a whim (by an individual user) or
- in accordance with policy (by a corporation or government) but not
- actually required for any particular use. Therefore, it often ends
- up on some shelf.
-
- <shell> [UNIX, now used elsewhere] n. 1. The command interpreter
- used to pass commands to an operating system; so called because
- it's the part of the operating system that interfaces to the
- outside world. 2. More generally, any interface program which
- mediates access to a special resource or <server> for
- convenience, efficiency or security reasons; for this meaning, the
- usage is usually "a shell around" whatever. This sort of
- program is also called a "wrapper".
-
- <shell out> [UNIX] n. To spawn an interactive <subshell> from within a
- program such as a mailer or editor. "Bang foo runs foo in a
- subshell, while bang alone shells out."
-
- <shift left (or right) logical> [from any of various machines'
- instruction sets] 1. vi. To move oneself to the left (right). To
- move out of the way. 2. imper. "Get out of that (my) seat! You
- can move to that empty one to the left (right)." Usage: often
- used without the "logical", or as "left shift" instead of
- "shift left". Sometimes heard as LSH /l@sh/, from the PDP-10
- instruction set.
-
- <shitogram> /shit'oh-gram/ n. A *really* nasty piece of email.
- Compare <nastygram>, <flame>.
-
- <short card> n. A half-length IBM PC expansion card or adapter that
- will fit in one of the two short slots located towards the right
- rear of a standard chassis (tucked behind the floppy disk drives).
- See also <tall card>.
-
- <shotgun debugging> n. The software equivalent of <Easter egging>;
- the making of relatively undirected changes to software in the hope
- that a bug will be preturbed out of existence. This almost never
- works, and usually introduces more bugs.
-
- <showstopper> n. A hardware or (especially) software bug that makes
- an implementation effectively unusable; one which absolutely has to
- be fixed before development can go on. Opposite in connotation
- from its original theatrical use, whic referred to something
- stunningly "good".
-
- <shriek> See <excl>. Occasional CMU usage, also in common use among
- <APL> fans and mathematicians, especially category theorists.
-
- <sidecar> n. Syn. <slap on the side>. Esp. used add-ons for the
- late and unlamented IBM PCjr.
-
- <sig block> /sig blok/ [UNIX; often written ".sig" there] n. Short
- for `signature', used specifically to refer to the electronic
- signature block which most UNIX mail- and news-posting software
- will allow you to automatically append to outgoing mail and news.
- The composition of one's sig can be quite an art form, including an
- ASCII logo or one's choice of witty sayings (see <sig quote>); but
- many consider large sigs a waste of <bandwidth>, and it has been
- observed that the size of one's sig block is usually inversely
- proportional to one's longevity and level of prestige on the net.
-
- <sig quote> /sig kwoht/ [USENET] n. A maxim, quote, proverb, joke or
- slogan embedded in one's <SIG> and intended to convey something of
- one's philosophical stance, pet peeves, or sense of humor. "He
- *must* be a Democrat --- he posted a sig quote from Dan
- Quayle."
-
- <signal to noise ratio> [from analogue electronics] n. Used by hackers in
- a generalization of its technical meaning. `Signal' refers to
- useful information conveyed by some communications medium and
- `noise' to anything else on that medium. Hence a low ratio
- implies that it is not worth paying attention to the medium in
- question. Figures for such metaphorical ratios are never given.
- The term is most often applied to <USENET> newsgroups during <flame
- wars>. Compare <bandwidth>. See also <coefficient of x>.
-
- <silicon> n. Hardware, esp. ICs or microprocessor-based computer
- systems (compare <iron>). Contrasted with software.
-
- <silicon foundry> A company that <fab>s chips to the designs of
- others. As of the late 1980s, the existance of silicon foundries
- made it much easier for hardware design startup companies to come
- into being. The downside of using a silicon foundry is that the
- distance from the actual chip fabrication processes leads to weaker
- designers. This is somewhat analogous to the use of a <HLL> versus
- coding in assembler.
-
- <silly walk> [from Monty Python] vi. A ridiculous procedure required to
- accomplish a task. Like <grovel>, but more <random> and humorous.
- "I had to silly-walk through half the /usr directories to find the
- maps file."
-
- <silo> n. The FIFO input-character buffer in an RS-232 line card. So
- called from DEC terminology used on DH and DZ line cards for the
- VAX and PDP-11.
-
- <Silver Book> n. Jensen & Wirth's infamous `Pascal User Manual
- and Report', so called because of the silver cover of the
- widely-distributed Springer-Verlag second edition of 1978 (ISBN
- 0-387-90144-2). See <Red Book>, <Green Book>, <Blue Book>, <White
- Book>, <Purple Book>, <Orange Book>, <Pink-Shirt Book>, <Dragon
- Book>, <Aluminum Book>
-
- <since time T equals minus infinity> adj. A long time ago; for as
- long as anyone can remember; at the time that some particular frob
- was first designed. Sometimes the word `time' is omitted if there
- is no danger of confusing `T' as a time with <T> meaning `yes'.
- See also <time T>.
-
- <sitename> [UNIX/Internet] n. The unique electronic name of a computer
- system, used to identify it in UUCP mail, USENET or other forms of
- electronic information interchange. The folklore interest of
- sitenames stems from the creativity and humor they often display.
- Interpreting a sitename is not unlike interpreting a vanity license
- plate; one has to mentally unpack it, allowing for mono-case and
- length restrictions and the lack of whitespace. Hacker tradition
- deprecates dull, institutional-sounding names in favor of punchy,
- humorous and clever coinages (except that it is considered
- appropriate for the official public gateway machine of an
- organization to bear the organization's name or acronym).
- Mythological references, cartoon characters, animal names, and
- allusions to SF or fantasy literature are probably the most popular
- sources for sitenames (in roughly that order). See also <network
- address>.
-
- <skulker> n. Syn. <prowler>.
-
- <slap on the side> adj. (also called a <sidecar>) A type of
- external expansion marketed by computer manufacturers (e.g.
- Commodore for their Amiga 500/1000 series and IBM for the hideous
- failure they called `PCJr'). Various SOTS boxes provided
- necessities such as memory, hard drive controllers, and
- conventional expansion slots.
-
- <sleep> vi. On a timesharing system, a process which relinquishes its
- claim on the scheduler until some given event occurs or a specified
- time delay elapses is said to "go to sleep".
-
- <slim> n. A small, derivative change (e.g. to code).
-
- <slop> n. 1. A one-sided <fudge factor>, that is, an allowance for
- error but only in one of two directions. For example, if you need
- a piece of wire ten feet long and have to guess when you cut it,
- you make very sure to cut it too long, by a large amount if
- necessary, rather than too short by even a little bit, because you
- can always cut off the slop but you can't paste it back on again.
- When discrete quantities are involved, slop is often introduced to
- avoid the possibility of a <fencepost error>. 2. n. The ratio of
- the size code generated by a compiler to the size of equivalent
- <hand-hacked> assembler code, minus 1; i.e., the space (or maybe
- time) you lose because you didn't do it yourself. This number is
- often used as a measure of the goodness of a compiler; slop below
- 5% is very good, and 10% is usually acceptable for most purposes.
- With modern compiler technology, esp. on RISC machines, the
- compiler's slop may actually be *negative*; that is, humans
- may be unable to generate code as good. This is one of the reasons
- assembler programming is no longer common.
-
- <slopsucker> n. A lowest-priority task that must wait around until
- everything else has `had its fill' of machine resources. Only
- when the machine would otherwise be idle is the task allowed to
- `suck up the slop.' Also called a <hungry puppy>. One common
- variety of slopsucker hunts for large prime numbers. Compare
- <background>.
-
- <sluggy> /sluhg'ee/ adj. Hackish variant of `sluggish'. Used only of
- people, esp. someone just waking up after a long <gronk out>.
-
- <slurp> vt. To read a large data file entirely into core before working
- on it. This may be contrasted with the strategy of reading a small
- piece at a time, processing it, and then reading the next piece.
- "This program slurps in a 1K-by-1K matrix and does an FFT."
-
- <smart> adj. Said of a program that does the <Right Thing> in a wide
- variety of complicated circumstances. There is a difference
- between calling a program smart and calling it intelligent; in
- particular, there do not exist any intelligent programs (yet).
- Compare <robust> (smart programs can be <brittle>).
-
- <smart terminal> n. A terminal that has enough computing capability to
- perform useful work independently of the main computer. The
- development of workstations and personal computers has made this
- term and the product it describes semi-obsolescent, but one may
- still hear variants of the phrase "act like a smart terminal"
- used to describe the behavior of workstations/PCs with respect to
- programs that execute almost entirely out of a remote <server>'s
- storage, using said devices as displays. Compare <glass tty>.
-
- There's a classic quote from Rob Pike (inventor of the <blit>
- terminal): "A smart terminal is not a smart*ass* terminal,
- but rather a terminal you can educate." This illustrates a common
- design problem; the attempt to make peripherals (or anything else)
- intelligent sometimes results in finicky, rigid "special
- features" that become just so much dead weight if you try to use
- the device in any way the designer didn't anticipate. Flexibility
- and programmability, on the other hand, are *really* smart.
-
- <smash case> vi. To lose or obliterate the uppercase/lowercase
- distinction in text input. "MS-DOS will automatically smash case
- in the names of all the files you create." The term <fold case>
- is nearly synonymous but implies that the action is deliberate.
-
- <smash the stack> [C programming] n. On many C implementations it is
- possible to corrupt the execution stack by writing past the end of
- an array declared auto in a routine. Code that does this is said
- to "smash the stack", and can cause return from the routine to jump
- to a random text address. This can produce some of the most
- insidious data-dependent bugs known to mankind. Variants include
- "trash" the stack, <scribble> the stack, <mangle> the stack;
- <mung> the stack is not used as this is never done intentionally.
- See <spam>; see also <aliasing bug>, <fandango on core>, <memory
- leak>, <precedence lossage>, <overrun screw>.
-
- <smiley> n. See <emoticon>.
-
- <smoke test> n. 1. A rudimentary form of testing applied to electronic
- equipment following repair or reconfiguration in which AC power is
- applied and during which the tester checks for sparks, smoke, or
- other dramatic signs of fundamental failure. 2. By extension, the
- first run of a piece of software after construction or a critical
- change. See <magic smoke>.
-
- <smoking clover> [ITS] n. A <display hack> originally due to Bill
- Gosper. Many convergent lines are drawn on a color monitor in AOS
- mode (so that every pixel struck has its color incremented). The
- color map is then rotated. The lines all have one endpoint in the
- middle of the screen; the other endpoints are spaced one pixel
- apart around the perimeter of a large square. This results in a
- striking, rainbow-hued, shimmering four-leaf clover. Gosper joked
- about keeping it hidden from the FDA lest it be banned.
-
- <SMOP> /smop/ [Simple (or Small) Matter of Programming] n. 1. A piece
- of code, not yet written, whose anticipated length is significantly
- greater than its complexity. Usage: used to refer to a program
- that could obviously be written, but is not worth the trouble. It
- is also used ironically to imply that a difficult problem can be
- easily solved because a program can be written to do it; the irony
- is that it is very clear that writing such a program will be a
- great deal of work. Example: "It's easy to change a FORTRAN
- compiler to compile COBOL as well; it's just a SMOP." 2. Often
- used ironically by the intended victim when a suggestion for a
- program is made which seems easy to the suggester, but is obviously
- a lot of work to the programmer.
-
- <SNAFU principle> n. "True communication is only possible between
- equals, because inferiors are more consistently rewarded for
- telling their superiors pleasant lies than for telling the truth"
- --- a central tenet of <Discordianism> often invoked by hackers
- to explain the reason authoritarian hierarchies screw up so
- reliably and systematically. There is a common fable
- that well illustrates this. A <hacker> says to a manager, "This
- is manure". Manager to second-level, "This is fertiliser".
- Second-level to third-level, "This makes things grow".
- Third-level to Director, "Must be good stuff". After the
- subsequent disaster, the <suits> protect themselves by saying "I
- was misinformed", and the programmer is demoted or fired.
-
- <snail-mail> n. Paper mail, as opposed to electronic. Sometimes
- written as the single word `SnailMail'. One's postal address is,
- correspondingly, a "snail address". Derives from earlier
- coinage `USnail' for which there have been parody posters and
- stamps made. Oppose <email>.
-
- <snarf> /snarf/ vt. 1. To grab, esp. a large document or file for the
- purpose of using it either with or without the author's permission.
- See <BLT>. Variant: "snarf down", to snarf, sometimes with the
- connotation of absorbing, processing, or understanding. "I think
- I'll snarf down the list of DDT commands so I'll know what's
- changed recently." 2. [in the UNIX community] to fetch a file or
- set of files across a network. See also <blast>. This term was
- mainstream in the late sixties meaning `to eat piggishly'.
-
- <snarf & barf> /snarf'n-barf/ n. The act of grabbing a region of text
- using a <WIMP> environment and then stuffing the contents of that
- region into another region or into the same region, to avoid
- re-typing a command line. In the late sixties this was a
- mainstream expression for an "Eat now, regret it later"
- cheap-restaurant expedition.
-
- <snark> [Lewis Carroll, via the Michigan Terminal System] n. 1. A
- system failure. When a user's process bombed, the operator would
- get a message "Help, Help, Snark in MTS!". 2. More generally,
- any kind of unexplained or threatening event on a computer. Often
- used to refer to events or log file entries which might indicate an
- attempted security violation. 3. UUCP name of snark.thyrsus.com,
- home site of the Jargon File 2.x.x versions.
-
- <sneakernet> n. Term used (generally with ironic intent) for transfer
- of electronic information by physically carrying tape, disks, or
- some other media from one machine to another. "Never
- underestimate the bandwidth of a station wagon filled with magtape,
- or a 747 filled with CD-ROMs." Also called `Tennis-Net',
- `Armpit-Net'.
-
- <sniff> v.,n. Synonym for <poll>.
-
- <SO> /ess-oh/ n. (also "S.O.") Acronym for Significant Other,
- almost invariably written abbreviated and pronounced /ess-oh/ by
- hackers. Used to refer to one's primary relationship, esp. a
- live-in to whom one is not married. See <MOTAS>, <MOTOS>,
- <MOTSS>.
-
- <social science number> [IBM] n. A statistic which is <content
- free>, or nearly so. A measure derived via methods of questionable
- validity from data of a dubious and vague nature. Predictively,
- having a social science number in hand is seldom much better than
- nothing and can be considerably worse. <Management> loves them.
- See also <numbers>, <math-out>.
-
- <softcopy> n. [by analogy with "hardcopy"] A machine readable form of
- corresponding hardcopy. See <bits>.
-
- <software bloat> n. The results of <second system effect>. Commonly
- cited examples include `ls(1)', <X>, <BSD>, <Missed'em-five> and
- <OS/2>.
-
- <software rot> n. Term used to describe the tendency of software
- which has not been used in awhile; such failure may be
- semi-humorously ascribed to <bit rot>. More commonly,
- "software rot" strikes when a program's assumptions become out
- of date. If the design was insufficiently <robust> this may
- cause it to fail in mysterious ways. For example, due to endemic
- shortsightedness in the design of COBOL programs, most will succumb
- to software rot when their two-digit year counters <wrap around> at
- the beginning of the year 2000.
-
- Historical note: software rot in an even funnier sense than the
- mythical one was a real problem on early research computers (e.g.
- the R1, see <grind crank>). If a program that depended on a
- peculiar instruction hadn't been run in quite a while, the user
- might discover that the opcodes no longer did the things as they
- used to. ("Hey, so-and-so needs an instruction to do
- such-and-such. We can snarf this opcode, right? No one uses
- it.")
-
- Compare <bit rot>.
-
- <softy> [IBM] n. Hardware hackers' term for a software expert who
- is largely ignorant of the mysteries of hardware.
-
- <snivitz> n. A hiccup in hardware or software; a small, transient
- problem of unknown origin (less serious than a <snark>).
-
- <softwarily> /soft-weir'i-lee/ adv. In a way pertaining to software.
- "The system is softwarily unreliable." The adjective
- `softwary' is *not* used. See <hardwarily>.
-
- <some random X> adj. Used to indicate a member of class X, with the
- implication that the particular X is interchangeable with most
- other Xs in whatever context was being discussed. "I think some
- random cracker tripped over the guest timeout last night."
-
- <sorcerer's apprentice mode> n. A bug in a protocol where, under some
- circumstances, the receipt of a message causes more than one
- message to be sent, each of which, when received, triggers the same
- bug. Used esp. of such behavior caused by <bounce message> loops
- in <email> software. Compare <broadcast storm>.
-
- <SOS> n.,obs. /ess-oh-ess/ 1. An infamously <losing> text editor.
- Once, back in the 1960's, when a text editor was needed for the
- PDP-6, a hacker crufted together a <quick and dirty> `stopgap
- editor' to be used until a better one was written. Unfortunately,
- the old one was never really discarded when new ones (in
- particular, <TECO>) came along. SOS is a descendant of that
- editor; SOS means `Son of Stopgap', and many PDP-10 users gained
- the dubious pleasure of its acquaintance. Since then other
- programs similar in style to SOS have been written, notably BILOS
- (bye'lohss) the Brother-In-Law Of Stopgap. See also <TECO>. 2.
- /sos/ n. Inverse of <AOS>, from the PDP-10 instruction set.
-
- <space-cadet keyboard> n. The Knight keyboard, a now-legendary device
- used on MIT LISP machines which inspired several still-current
- slang terms and influenced the design of <EMACS>. It was inspired
- by the Stanford keyboard and equipped with no less than
- *seven* shift keys: four keys for <bucky bits> (`control',
- `meta', `hyper', and `super') and three like the regular shift key,
- called `shift', `top', and `front'. Many keys have three symbols
- on them: a letter and a symbol on the top, and a Greek letter on
- the front. For example, the `L' key has an `L' and a two-way
- arrow on the top, and the Greek letter lambda on the front. If you
- press this key with the right hand while playing an appropriate
- `chord' with the left hand on the shift keys, you can get the
- following results:
-
- L lower-case "l"
- shift-L upper-case "L"
- front-L Greek lower-case lambda
- front-shift-L Greek upper-case lambda
- top-L two-way arrow (front and shift are ignored)
-
- And of course each of these may also be typed with any combination
- of the control, meta, hyper, and super keys. On this keyboard you
- can type over 8000 different characters! This allows the user to
- type very complicated mathematical text, and also to have thousands
- of single-character commands at his disposal. Many hackers were
- actually willing to memorize the command meanings of that many
- characters if it will reduce typing time (this view rather
- obviously shaped the interface of EMACS). Other hackers, however,
- thought having that many bucky bits is overkill, and object that
- such a keyboard can require three or four hands to operate. See
- <bucky bits>, <cokebottle>, <meta bit>.
-
- <SPACEWAR> n. A space-combat simulation game (based on E. E. "Doc"
- Smith's `Lensman' books) first implemented on the PDP-1 at MIT
- in 1960-61. SPACEWAR aficionados formed the core of the early
- hacker culture at MIT. Ten years later a descendant of the game
- motivated Ken Thompson to build, in his spare time on a scavenged
- PDP-7, the operating system that became <UNIX>. Ten years after
- that, SPACEWAR was commercialized as one of the first video games;
- descendants are still feeping in video arcades everywhere.
-
- <spaghetti code> n. Describes code with a complex and tangled control
- structure, esp. one using many GOTOs, exceptions or other
- `unstructured' branching constructs. Pejorative. The synonym
- "kangaroo code" has been reported.
-
- <spaghetti inheritance> n. [Encountered among users of object-oriented
- languages that use inheritance, such as Smalltalk] A convoluted
- class-subclass graph, often resulting from carelessly deriving
- subclasses from other classes just for the sake of reusing their
- code. Coined in a (successful) attempt to discourage such
- practice, through guilt by association with <spaghetti code>.
-
- <spam> [from the <MUD> community] vt. To crash a program by overrunning
- a fixed-size buffer with excessively large input data. See also
- <overrun screw>, <smash the stack>.
-
- <special-case> vt. To write unique code to handle input or command
- to a program that is somehow distinguished from normal processing.
- This would be used for processing of mode switches or interrupt
- characters in an interactive interface (as opposed, say, to text
- entry or normal commands); or for processing of <hidden flags> in
- the input of a batch program or <filter>.
-
- <spell> n. Syn. <incantation>.
-
- <spiffy> /spi'fee/ adj. 1. Said of programs having a pretty, clever or
- exceptionally well-designed interface. "Have you seen the spiffy X
- version of <empire> yet?" 2. Said sarcastically of programs which
- are perceived to have little more than a flashy interface going for
- them. Which meaning should be drawn depends delicately on tone of
- voice and context. This word was common mainstream slang during
- the nineteen-forties, in a sense close to #1.
-
- <spin> vi. Equivalent to <buzz>. More common among C and UNIX
- programmers.
-
- <spin-lock> [Cambridge] n. A <busy-wait>. Preferred in Britain.
-
- <spl> [abbrev, fr. Set Priority Level] The way traditional Unix
- kernels implement mutual exclusion by running code at high
- interrupt levels. Used in slang to describe the act of tuning in
- or tuning out ordinary communication. Classically, spl levels run
- from 1 to 7; "Fred's at spl 6 today" would mean he's very hard to
- interrupt. "Wait till I finish this, I'll spl down then."
-
- <splat> n. 1. Name used in many places (DEC, IBM, and others) for the
- ASCII asterisk (`*') character. 2. [MIT] Name used by some
- people for the ASCII number-sign (`#') character. 3. [Stanford]
- Name used by some people for the Stanford/ITS extended ASCII
- circle-x character. (This character is also called "circle-x",
- "blobby", and "frob", among other names.) 4. [Stanford] Name
- for the semi-mythical extended ASCII circle-plus character. 5.
- Canonical name for an output routine that outputs whatever the
- local interpretation of splat is. 6. [Rochester Institute of
- Technology] The command key on a Macintosh. Usage: nobody really
- agrees what character `splat' is, but the term is common. See also
- <ASCII>
-
- <spooge> /spooj/ 1. n. Inexplicable or arcane code, or random and
- probably incorrect output from a computer program. 2. vi. To
- generate code or output as in definition 1.
-
- <spool> [fr. early IBM "Simultaneous Peripheral Operation Off-Line",
- but this acronym is widely thought to have been contrived for
- effect] vt. To send files to some device or program (a `spooler')
- that queues them up and does something useful with them later. The
- spooler usually understood is the `print spooler' controlling
- output of jobs to a printer, but the term has been used in
- connection with other peripherals (especially plotters and graphics
- devices).
-
- <stack> n. A person's stack is the set of things he has to do in the
- future. One speaks of the next project to be attacked as having
- risen to the top of the stack. "I'm afraid I've got real work to
- do, so this'll have to be pushed way down on my stack." "I
- haven't done it yet because every time I pop my stack something new
- gets pushed." If you are interrupted several times in the middle
- of a conversation, "my stack overflowed" means "I forget what we
- were talking about" (the implication is that too many items were
- pushed onto the stack than could be remembered, and so the least
- recent items were lost). The usual physical example of a stack is
- to be found in a cafeteria: a pile of plates sitting on a spring in
- a well in a cart, so that when you put a plate on the top they all
- sink down, and when you take one off the top the rest spring up a
- bit. See also <PUSH> and <POP>.
-
- At MIT, all the <stack> usages used to be more commonly found
- with <pdl>, and this may still be true. Everywhere else
- <stack> seems to be the preferred term. <Knuth> writes (in
- `The Art of Computer Programming' 1st edition, vol 1, page 236
- in section 2.2.1):
-
- Many people who realized the important of stacks and queues
- independently have given other names to these structures:
- stacks have been called push-down lists, reversion storages,
- cellars, nesting stores, piles, last-in-first-out ("LIFO")
- lists, and even yo-yo lists!
-
- <stack puke> n. Some micros are said to `puke their guts onto the
- stack' to save their internal state during exception processing.
- On a pipelined machine this can take a while (up to 92 bytes for a
- bus fault on the 68020, for example).
-
- <stale pointer bug> n. Synonym for <aliasing bug> used esp. among
- microcomputer hackers.
-
- <state> n. Condition, situation. "What's the state of your latest
- hack?" "It's winning away." "The system tried to read and
- write the disk simultaneously and got into a totally wedged
- state." A standard question is "What's your state?" which means
- "What are you doing?" or "What are you about to do?" Typical
- answers might be "I'm about to gronk out", or "I'm hungry".
- Another standard question is "What's the state of the world?"
- meaning "What's new?" or "What's going on?". The more terse and
- humorous way of asking these conventions would be "State-p?".
-
- <stiffy> [Lowell University] n. 3.5" <microfloppies>, so called
- because their jackets are more firm than the 5.25" and 8" floppy.
-
- <stir-fried random> alt. <stir-fried mumble> n. Term used for frequent
- best dish of those hackers who can cook. Consists of random fresh
- veggies and meat wokked with random spices. Tasty and economical.
- See <random>, <great-wall>, <ravs>, ORIENTAL FOOD; see also
- <mumble>.
-
- <stomp on> vt. To inadvertently overwrite something important, usually
- automatically. Example: "All the work I did this weekend got
- stomped on last night by the nightly-server script." Compare
- <scribble>, <mangle>, <trash>, <scrog>, <roach>.
-
- <Stone Age> n.,adj. 1. In computer folklore, an ill-defined period
- from ENIAC (c.1943) to the mid-1950s; the great age of
- electromechanical <dinosaur>s. Sometimes used for the entire
- period up to 1960-61 (see <Iron Age>); however, it is funnier and
- more descriptive to characterize the latter half in terms of a
- `Bronze Age' era of all-transistor, pre-ferrite-core machines
- with drum or CRT mass storage (as opposed to just mercury delay
- lines and/or relays). See also <Iron Age>. 2. More generally, a
- pejorative for any crufty, ancient piece of hardware or software
- technology. Note that this is used even by people who were there
- for the <Stone Age> (sense #1).
-
- <stoppage> /sto'p@j/ n. Extreme lossage (see <lossage>) resulting in
- something (usually vital) becoming completely unusable. "The
- recent system stoppage was caused by a <fried> transformer."
-
- <stubroutine> /stuhb'roo-teen/ [contr. of "stub routine"] n. Tiny,
- often vacuous placeholder for a subroutine to be written or fleshed
- out later.
-
- <studlycaps> n. A hackish form of silliness similar to
- <BiCapitalization>, but applied to random text rather than
- trademarks. ThE oRigiN and SigNificaNce of thIs pRacTicE iS
- oBscuRe.
-
- <stunning> adj. Mind-bogglingly stupid. Usually used in sarcasm.
- "You want to code *what* in ADA? That's...a stunning idea!"
- See also <non-optimal solution>.
-
- <subshell> [UNIX, MS-DOS] n. An OS command interpreter (see <shell>)
- spawned from within a program, such that exit from the command
- interpreter returns one to the parent program in a state that
- allows it to continue execution. Oppose <chain>.
-
- <sucking mud> [Applied Digital Research] adj. (also "pumping
- mud") Crashed or wedged. Usually said of a machine that provides
- some service to a network, such as a file server. This Dallas
- regionalism derives from the East Texas oil field lament, "Shut
- 'er down, Ma, she's a-suckin' mud." Often used as a query. "We
- are going to reconfigure the network, are you ready to suck mud?"
-
- <suit> n. 1. Ugly and uncomfortable `business clothing' often worn by
- non-hackers. Invariably worn with a `tie', a strangulation device
- which partially cuts off the blood supply to the brain. It is
- thought that this explains much about the behavior of suit-
- wearers. 2. A person who habitually wears suits, as distinct from a
- techie or hacker. See <loser>, <burble> and <brain-damaged>.
- English, BTW, is relatively kind; our Soviet correspondent informs
- us that the corresponding idiom in Russian hacker jargon is
- "sovok", lit. a tool for grabbing garbage.
-
- <sunspots> n. Notional cause of an odd error. "Why did the program
- suddenly turn the screen blue?" "Sunspots, I guess". Also cause
- of bitrot, from the genuine, honest-to-god fact that sunspots will
- increase cosmic radiation which can flip single bits in memory.
- Needless to say, although real sunspot errors happen, they are
- extremely rare. See <cosmic rays>, <phase of the moon>.
-
- <sun-stools> n. Unflattering hackerism for SunTools, a pre-X windowing
- environment notorious in its day for size, slowness and misfeatures
- (X, however, is larger and slower; see <second-system effect>).
-
- <SUPDUP> /soop'doop/ vi. To communicate with another ARPAnet host using
- the SUPDUP program, which is a SUPer-DUPer <TELNET> talking a
- special display protocol used mostly in talking to ITS sites.
- Sometimes abbreviated to SD.
-
- <superprogrammer> n. A prolific programmer; one who can code
- exceedingly well and quickly. Not all hackers are
- superprogrammers, but many are. (Productivity can vary from one
- programmer to another by factors of as much as 1000. For example,
- programmer A might be able to write an average of 3 lines of
- working code in one day, while another, with the proper tools and
- skill, might be able to write 3,000 lines of working code in one
- day. This variance is astonishing, appearing in very few other
- areas of human endeavor.) The term superprogrammer is more
- commonly used within such places as IBM than in the hacker
- community. It tends to stress productivity rather than creativity
- or ingenuity. Hackers tend to prefer the terms <hacker> and
- <wizard>.
-
- <support> n. After-sale handholding; something many software vendors
- promise but few deliver. To hackers, most support people are
- useless --- because by the time a hacker calls support he/she will
- usually know the relevant manuals better than the support people
- (sadly, this is *not* a joke or exaggeration). A hacker's
- idea of "support" is a one-on-one with the software's designer.
-
- <Suzie COBOL> /soo'zee koh'bol/ 1. [IBM, prob. fr. Frank Zappa's
- "little Suzy Creamcheese"] n. A coder straight out of training
- school who knows everything except the benefits of comments in
- plain English. Also (fashionable among personkind wishing to avoid
- accusations of sexism) `Sammy Cobol' or (in some non-IBM circles)
- `Cobol Charlie'. 2. [proposed] Meta-name for any <code grinder>,
- analogous to <J. Random Hacker>.
-
- <swab> [From the mnemonic for the PDP-11 `byte swap' instruction, as
- immortalized in the dd(1) option `conv=swab' (see <DD>)] 1.
- vt. to solve the <NUXI problem> by swapping bytes in a file. 2.
- Also, the program in V7 UNIX used to perform this action, or
- anything functionally equivalent to it. See also <big-endian>,
- <little-endian>, <bytesexual>.
-
- <swap space> n. Storage space, especially temporary storage space
- used during a move or reconfiguration. "I'm just using that corner
- of the machine room for swap space".
-
- <swapped> adj. From the older (per-task) method of using secondary
- storage devices to implement support for multitasking. Something
- which is <swapped in> is available for immediate use in main
- memory, and otherwise is <swapped out>. Often used metaphorically
- to refer to people's memories ("I read the Scheme Report every few
- months to keep the information swapped in.") or to their own
- availability ("I'll swap you in as soon as I finish looking at
- this other problem."). Compare <page in>, <page out>.
-
- <swizzle> v. To convert external names or references within a data
- structure into direct pointers when the data structure is brought
- into main memory from external storage; also called "pointer
- swizzling"; the converse operation is sometimes termed
- <unswizzling>.
-
- <sync> /sink/ [UNIX] n.,vi. 1. To force all pending I/O to the disk.
- 2. More generally, to force a number of competing processes or
- agents to a state that would be `safe' if the system were to crash;
- thus, to checkpoint. See <flush>.
-
- <syntactic sugar> [coined by Peter Landin] n. Features added to a
- language or formalism to make it `sweeter' for humans, that do not
- affect the expressiveness of the formalism (compare <chrome>). Used
- esp. when there is an obvious and trivial translation of the
- `sugar' feature into other constructs already present in the
- notation. Example: C's `a[i]' notation is syntactic sugar for
- `*(a + i)'. "Syntactic sugar causes cancer of the semicolon."
- --- Alan Perlis.
-
- <sys-frog> [the PLATO system] n. Playful hackish variant of
- `sysprog' which is in turn short for `systems-programmer'.
-
- <sysop> n. [BBS] The operator (and usually owner) of a
- bulletin-board system. A common neophyte mistake on <FidoNet> is
- to address a message to `sysop' in an international <echo>, thus
- sending it to hundreds of sysops world-wide.
-
- <system> n. 1. The supervisor program or OS on a computer. 2. n. The
- entire computer system, including input/output devices, the
- supervisor program or OS, and possibly other software. 3. Any
- large-scale program. 4. Any method or algorithm. 5. The way
- things are usually done. Usage: a fairly ambiguous word. "You
- can't beat the system." <System hacker>: one who hacks the system
- (in sense 1 only; for sense 2 one mentions the particular program:
- e.g., "lisp hacker")
-
- <system mangler> n. Humorous synonym for "system programmer";
- compare <sys-frog>. Refers specifically to a systems programmer
- in charge of administration, software maintainence, and updates at
- some site.
-
- {= T =}
-
- <T> /tee/ 1. [from LISP terminology for `true'] Yes. Usage: used in
- reply to a question, particularly one asked using the `-P'
- convention). See <NIL>. In LISP, the name T means "true", among
- other things. Some hackers use `T' and `NIL' instead of
- `Yes' and `No' almost reflexively. This sometimes causes
- misunderstandings. When a waiter or flight attendant asks whether
- a hacker wants coffee, he may well respond "T", meaning that he
- wants coffee; but of course he will be brought a cup of tea
- instead. As it happens, most hackers like tea at least as well as
- coffee, particularly those who frequent Chinese restaurants, so
- it's not that big a problem. 2. See <time t>. 3. In
- transaction-processing circles, an abbreviation for the noun
- "transaction". 4. [Purdue] Alternate spelling of <tee>
-
- <TANSTAAFL> /tan'stah-fl/ [acronym, from Robert Heinlein's classic
- `The Moon is a Harsh Mistress'.] "There Ain't No Such Thing
- As A Free Lunch", often invoked when someone is balking at an
- unpleasant design choice or the prospect of using an unpleasantly
- <heavyweight> technique. "What? Don't tell me I have to implement a
- database back end to get my address book program to work!"
- "Well, TANSTAAFL you know." This usage is particularly popular
- among the relatively high precentages of science-fiction fans and
- political libertarians in hackerdom (see Appendix B).
-
- <tail recursion> n. If you haven't already, see <tail recursion>.
-
- <talk mode> n. The state a terminal is in when linked to another via a
- bidirectional character pipe, to support on-line dialogue between
- two or more users. Talk mode has a special set of jargon words,
- used to save typing, which are not used orally. Some of these are
- identical to (and probably derived from) Morse-code jargon used by
- ham-radio amateurs going back to the nineteen-twenties.
-
- BCNU Be seeing you.
- BTW By the way... Lower-case also works.
- BYE? Are you ready to unlink? (This is the standard way to
- end a talk mode conversation; the other person types BYE
- to confirm, or else continues the conversation.)
- CUL See you later.
- ENQ? Are you busy? Expects ACK or NAK in return.
- FOO? A greeting, also meaning R U THERE? Often used in the
- case of unexpected links, meaning also "Sorry if I
- butted in" (linker) or "What's up?" (linkee).
- FYI For your information...
- FYA For your amusement...
- GA Go ahead (used when two people have tried to type
- simultaneously;
- this cedes the right to type to the other).
- HELLOP A greeting, also meaning R U THERE? (An instance of the
- "-P" convention.)
- JAM Just a minute... Equivalent to SEC...
- NIL No (see <NIL>).
- O Over to you (lower-case works too).
- OO Over and out (lower-case works too).
- / Another form of "Over to you" (from x/y as "x over y")
- OBTW Oh, by the way...
- R U THERE? Are you there?
- SEC Wait a second (sometimes written SEC...).
- T Yes (see the main entry for <T>).
- TNX Thanks.
- TNX 1.0E6 Thanks a million (humorous).
- WRT With Regard To or With Respect To.
- WTF The universal interrogative particle. WTF knows what
- it means?
- WTH What the hell?
- <double CRLF> When the typing party has finished, he types two CRLFs
- to signal that he is done; this leaves a blank line between
- individual "speeches" in the conversation, making it easier to
- re-read the preceding text.
- <name>: When three or more terminals are linked, each speech is
- preceded by the typist's login name and a colon (or a hyphen) to
- indicate who is typing. The login name often is shortened to a
- unique prefix (possibly a single letter) during a very long
- conversation.
- /\/\/\ A giggle or chuckle (rare). On a MUD, this almost certainly mean
- `earthquake fault'.
-
- Most of the above sub-jargon is used at both Stanford and MIT.
- Several of these are also common in <email>, esp. FYI, FYA, BTW,
- BCNU, and CUL. A few other abbreviations have been reported from
- commercial networks such as GEnie and CompuServe where on-line
- `live' chat including more than two people is common and usually
- involves a more `social' context, notably
-
- <g> grin
- BBL be back later
- BRB be right back
- HHOJ ha ha only joking
- HHOS <ha ha only serious>
- LOL laughing out loud
- ROTF rolling on the floor
- ROTFL rolling on the floor laughing
- AFK away from keyboard
- b4 before
- CU l8tr see you later
- MORF Male or Female?
- TTFN ta-ta for now
- OIC Oh, I see
- rehi hello again
-
- These are not used at universities or in the UNIX world;
- conversely, most of the people who know these are unfamiliar with
- FOO?, BCNU, HELLOP, <NIL>, and <T>.
-
- The <MUD> community uses a mixture of USENET/Internet emoticons, a
- few of the more natural of the old-style talk mode abbrevs, and
- some of the `social' list above; specifically, MUD respondents
- report use of BBL, BRB, LOL, b4, BTW, WTF, and WTH. The use of
- rehi is also common; in fact, mudders are fond of re- compounds and
- will frequently `rehug' or `rebonk' (see <bonk/oif>) people. The
- verb `re' by itself is verbed as `re-greet' In general, though,
- mudders express a preference for typing things out in full rather
- than using abbreviations; this may be due to the relative youth of
- the MUD cultures, which tend to include many touch typists and
- assume high-speed links. The following uses specific to MUDs are
- reported:
-
- UOK? Are you OK?
- THX Thanks (mutant of TNX)
- CU l8er See you later (mutant of CU l8tr)
- OTT over the top (excessive, uncalled for)
-
- Some <BIFF>isms (notably the variant spelling `d00d' appear to be
- passing into wider use among some subgroups of mudders). See also
- <hakspek>, <emoticon>, <bonk/oif>.
-
- <tall card> n. A PC/AT-sized expansion card (these can be larger
- than IBM-PC or XT cards because the AT case is bigger). See also
- <short card>.
-
- A PC expansion card or adapter that will only fit in
- the PC/AT (the PC/AT box, being higher than earlier varieties,
- accepts bigger cards).
-
- <tanked> adj. Same as <down>, used primarily by UNIX hackers. See
- also <hosed>. Popularized as a synonym for "drunk" by Steve
- Dallas in the late lamented `Bloom County' comics.
-
- <tar and feather> [from UNIX `tar(1)'] vt. To create a
- transportable archive from a group of files by first sticking them
- together with the tape archiver `tar(1)' (Tape ARchiver) and
- then compressing the result (see <compress>). The latter is
- dubbed `feathering' by analogy to what you do with an airplane
- propeller to decrease wind resistance; smaller files, after all,
- slip through comm links more easily.
-
- <taste> n. [primarily MIT-DMS] 1. The quality in programs which
- tends to be inversely proportional to the number of features,
- hacks, and kluges programmed into it. Also, "tasty",
- "tasteful", "tastefulness". "This feature comes in N
- tasty flavors." Although "tasteful" and "flavorful" are
- essentially synonyms, "taste" and <flavor> are not. Taste
- refers to sound judgement on the part of the creator; a program or
- feature can *exhibit* taste but cannot "have" taste. On
- the other hand, a feature can have <flavor>. Also, <flavor>
- has the additional meaning of `kind' or `variety' not shared by
- "taste". <flavor> is a more popular word among hackers than
- "taste", though both are used. 2. Alt. sp. of <tayste>.
-
- <tayste> n. Also as <taste>; two bits. Syn <crumb>, <quarter>.
- Compare <byte>, <dynner>, <playte>, <nybble>.
-
- <TCB> /tee see bee/ [IBM] 1. Trouble Came Back. Intermittent or
- difficult-to reproduce problem which has failed to respond to
- neglect. Compare <heisenbug>. Not to be confused with: 2. Trusted
- Computing Base, an `official' jargon term from the <Orange Book>.
-
- <tea, ISO standard cup of> [South Africa] n. A cup of tea with milk and
- and one teaspoon of sugar, where the milk was poured into the cup
- before the tea. Variations are ISO 0, with no sugar, ISO 2, with
- two spoons of sugar, and so on.
-
- Note: like many ISO standards, this one has a faintly alien ring in
- North America, wherein hackers generally shun the decadent British
- practice of adulterating perfectly good tea with *dairy
- products* and prefer instead to add a wedge of lemon. If one were
- feeling extremely silly, one might hypothecate an analogous
- "ANSI standard cup of tea" and wind up with a political
- situation distressingly similar to several that arise in much more
- serious technical contexts. Milk and lemon don't mix very well.
-
- <TECO> /tee'koh/ obs. 1. vt. Originally, to edit using the TECO editor
- in one of its infinite variations (see below); sometimes still used
- to mean `to edit' even when not using TECO! Usage: rare and now
- primarily historical. 2. [originally an acronym for (paper)
- `Tape Editor and COrrector'; later, `Text Editor and
- Corrector'] n. A text editor developed at MIT, and modified by
- just about everybody. If all the dialects are included, TECO might
- have been the single most prolific editor in use before <EMACS>
- to which it was directly ancestral. Noted for its powerful
- programming-language-like features and its incredibly hairy syntax.
- It is literally the case that every possible sequence of ASCII
- characters is a valid, though probably uninteresting, TECO program;
- one common hacker game used to be mentally working out what the
- teco commands corresponding to human names did. As an example,
- here is a TECO program that takes a list of names like this:
-
- Loser, J. Random
- Quux, The Great
- Dick, Moby
-
- sorts them alphabetically according to last name, and then puts the
- last name last, removing the comma, to produce this:
-
- Moby Dick
- J. Random Loser
- The Great Quux
-
- The program is:
-
- [1J^P$L$$
- J<.-Z;.,(S,$-D.)FX1@F^B$K:LI$G1L>$$
-
- (where ^B means `Control-B' (ASCII 0000010) and $ is actually an
- <escape> (ASCII 0011011) character)
-
- In fact, this very program was used to produce the second, sorted
- list from the first list! The first hack at it had a <bug>: gls
- (the author) had accidentally omitted the `@' in front of
- `F^B', which as anyone can see is clearly the <wrong thing>. It
- worked fine the second time. There is no space to describe all the
- features of TECO, but it may be of interest that `^P' means
- `sort' and `J<.-Z; ...L>' is an idiomatic series of commands
- for `do once for every line'.
-
- In 1990, TECO is now pretty much one with the dust of history,
- having been replaced in the affections of hackerdom by <EMACS>. It
- can still be found lurking on VMS and a couple of crufty PDP-11
- operating systems, however. See also <write-only language>.
-
- <tee> n.,vt. [Purdue] A carbon copy of an electronic transmission,
- "Oh, you're sending him the <bits> to that? Slap on a tee for
- me." From the UNIX command `tee(1)', itself named after a
- pipe fitting (see <plumbing>, <pipeline>). Can also mean `save
- one for me' as in "Tee a slice for me!". Also spelled `T'.
-
- <TechRef> [MS-DOS] n. The original `IBM PC Technical Reference
- Manual' including the BIOS listing and complete schematics for the
- PC. The only PC documentation in the issue package that's
- considered serious by real hackers.
-
- <Telerat> /tel'@-rat/ n. Unflattering hackerism for `Teleray', a
- line of extremely losing terminals. See also <terminak>,
- <sun-stools>, <HP-SUX>.
-
- <TELNET> /tel'net/ vt. To communicate with another ARPAnet host using
- the <TELNET> program. TOPS-10 people use the word IMPCOM since
- that is the program name for them. Sometimes abbreviated to TN.
- "I usually TN over to SAIL just to read the AP News."
-
- <ten finger interface> n. The interface between two networks which
- cannot be directly connected for security reasons; refers to the
- practice of placing two terminals side by side and having an
- operator read from one and type into the other.
-
- <tense> adj. Of programs, very clever and efficient. A tense piece of
- code often got that way because it was highly <bum>med, but
- sometimes it was just based on a great idea. A comment in a clever
- display routine by Mike Kazar, a student hacker at CMU: "This
- routine is so tense it will bring tears to your eyes. Much thanks
- to Craig Everhart and James Gosling for inspiring this <hack
- attack>." A tense programmer is one who produces tense code.
-
- <tenured graduate student> n. One who has been in graduate school for
- ten years (the usual maximum is five or six): a `ten-yeared'
- student (get it?). Students don't really get tenure, of course,
- the way professors do, but a tenth-year graduate student has
- probably been around the university longer than any non-tenured
- professor.
-
- <tera-> /te'r@/ pref. Multiplier, 10 ^ 15 or 2 ^ 50. See <kilo->.
-
- <teraflop club> /ter'a-flop kluhb/ [FLOP = Floating Point Operation]
- n. Mythical group of people who consume outrageous amounts of
- computer time in order to produce a few simple pictures of glass
- balls with intricate ray tracing techniques. Cal Tech professor
- James Kajiya is said to have been the founding member. See also
- <kilo->.
-
- <terminak> /ter'mi-nak`/ [Caltech, ca. 1979] n. Any malfunctioning
- computer terminal. A common failure mode of Lear-Siegler ADM3a
- terminals caused the `L' key to produce the `K' code instead;
- complaints about this tended to look like "Terminak #3 has a bad
- keyboard. Pkease fix." See <sun-stools>, <Telerat>, <HP-SUX>.
-
- <terminal brain death> n. Extreme form of <terminal illness> (sense
- #1).
-
- <terminal illness> n. 1. Syn. <raster burn>. 2. The `burn-in'
- condition your CRT tends to get if you don't have a screen saver.
-
- <terminal junkie> [Great Britain] n. A <wannabee> or early <larval
- stage> hacker who spends most of his/her time wandering the
- directory tree and writing <noddy> programs just to get his/her
- fix of computer time. Variants include "terminal jockey",
- "console junkie", or <console jockey>. The term "console
- jockey" seems to imply more expertise than the other three. See
- also <twink>, <read-only user>.
-
- <terpri> /ter'pree/ [from the LISP 1.5 (and later, MacLISP)] vi. To
- output a <CRLF>. Now rare. It is a contraction of `TERminate
- PRInt line'.
-
- <test> v. 1. To allow real users to bash on a prototype for long
- enough to get thoroughly acquainted with it, with careful
- monitoring and followup of the results. 2. Some bored
- random trying a couple of the simpler features with a developer
- looking over his/her shoulder ready to pounce on mistakes. Judging
- by the quality of most software, the second definition is far more
- prevalent. See also <demo>.
-
- <TeX> /tekh/ n. An extremely powerful <macro>-based text-formatter
- written by Donald E. Knuth, very popular in the computer-science
- community (it is good enough to have displaced UNIX
- `troff(1)', the other favored formatter, even at many UNIX
- installations). TeX fans insist on the correct (guttural)
- pronunciation and spelling (all caps, with the E depressed below
- the baseline) of the name (the mixed-case `TeX' is considered an
- acceptable kluge on ASCII-only devices). They like to proliferate
- names from the word `TeX' --- such as TeXnichian (TeX user),
- TeXhacker (TeX programmer), TeXmaster (competent TeX programmer),
- TeXhax, TeXnique, TeXpert.
-
- <text> n. 1. Executable code, esp. a `pure code' portion shared
- between multiple indstances of a program running in a multitasking
- OS. 2. Textual material in the mainstream sense; data which are in
- ordinary ASCII or EBCDIC representation. "Those are text files,
- you can review them using the editor". These two contradictory
- senses confuse hackers. too.
-
- <thanks in advance> [USENET] Conventional net.politeness ending a
- posted request for information or assistance. Sometimes written
- `advTHANKSance' or `aTdHvAaNnKcSe' or abbreviated `TIA'. See
- <net.>, <netiquette>.
-
- <theology> n. 1. Ironically used to refer to <religious issues>. 2.
- Technical fine points of an abstruse nature, esp. those where the
- resolution is of theoretical interest but relatively <marginal>
- with respect to actual use of a design or system. Used esp. around
- software issues with a heavy AI or language design component.
- Example: the deep- vs. shallow-binding debate in the design of
- dynamically-scoped LISPs.
-
- <theory> n. Used in the general sense of idea, plan, story, or set of
- rules. This is a generalization and abuse of the technical
- meaning. "What's the theory on fixing this TECO loss?" "What's
- the theory on dinner tonight?" ("Chinatown, I guess.")
- "What's the current theory on letting lusers on during the day?"
- "The theory behind this change is to fix the following well-known
- screw..."
-
- <thinko> /thing'koh/ [by analogy with "typo"] n. A bubble in the
- stream of consciousness; a momentary, correctable glitch in mental
- processing, especially one involving recall of information learned
- by rote. Syn. <braino>. Compare <mouso>.
-
- <This time, for sure!> Ritual affirmation frequently uttered during
- protracted debugging sessions involving numerous small obstacles
- (as, in for example, attempts to bring up a UUCP connection). For
- the proper effect, this must be uttered in a fruity imitation of
- Bullwinkle the Moose. Also heard: "Hey, Rocky! Watch me pull a
- rabbit out of my hat!". The canonical response is, of course,
- "But that trick *never* works!". See HUMOR, HACKER.
-
- <thrash> vi. To move wildly or violently, without accomplishing
- anything useful. Paging or swapping systems which are overloaded
- waste most of their time moving data into and out of core (rather
- than performing useful computation), and are therefore said to
- thrash. Someone who keeps changing his mind (esp. about what to
- work on next) is said to be thrashing. A person frantically trying
- to execute too many tasks at once (and not spending enough time on
- any of them) may also be described as thrashing. Compare
- <multitask>.
-
- <thread> /thred/ n. [USENET, GEnie] Common abbreviation of `topic
- thread', a more or less continuous chain of postings on a single
- topic.
-
- <three-finger salute> n. Syn. <vulcan nerve pinch>.
-
- <thunk> /thuhnk/ [mythically, the sound made by data when pushed
- onto the stack] n. 1. " ... a piece of coding which provides
- an address." --- P.Z. Ingerman, who invented <thunk>s in 1961 as
- a way of binding actual parameters to their formal definitions in
- Algol-60 procedure calls. If a procedure is called with an
- expression in the place of a formal parameter, the compiler
- generates a <thunk> to compute the expression and leave the
- address of the result in some standard location such as an index
- register. 2. Later generalized into an expression, frozen together
- with its environment for later evaluation if and when needed. The
- process of unfreezing these <thunk>s is called `forcing'. 3.
- Stub routine, in an overlay programming environment, which loads
- and jumps to the correct overlay. 4. People and activities
- scheduled in a thunklike manner. "It occurred to me the other day
- that I am rather accurately modelled by a thunk --- I frequently
- need to be forced to completion." --- paraphrased from a .plan
- file.
-
- <tick> n. 1. The width of one tick of the system clock on the
- computer. Often 1 AC cycle time (1/60 second in the U.S. and
- Canada, and 1/50 most other places) but more recently 1/100 sec has
- become common. Syn <jiffy>. 2. In simulations, the discrete unit
- of time that passes `between' iterations of the simulation
- mechanism. In AI applications, this amount of time is often left
- unspecified, since the only constraint of interest is that caused
- things happen after their causes. This sort of AI simulation is
- often pejoratively referred to as "tick-tick-tick" simulation,
- especially when the issue of simultaneity of events with long,
- independent chains of causes is <handwave>d.
-
- <tick-list features> [Acorn Computers] n. Features in software or
- hardware that customers insist on but never use (calculators in
- desktop TSRs and that sort of thing).
-
- <tickle a bug> vt. To cause a normally hidden bug to manifest
- through some known series of inputs or operations. "You can
- tickle the bug in the Paradise's highlight handling by trying to
- set bright yellow reverse video".
-
- <time sink> n. A project which consumes unbounded amounts of time.
-
- <time T> /tiem tee/ n. 1. An unspecified but usually well-understood
- time, often used in conjunction with a later time T+1. "We'll
- meet on campus at time T or at Louie's at time T+1." means, in the
- context of going out for dinner, "If we meet at Louie's directly,
- we can meet there a little later than if we meet on campus and then
- have to travel to Louie's." (Louie's is a Chinese restaurant in
- Palo Alto that is a favorite with hackers. Had the number 30 been
- used instead of `one', it would have implied that the travel time
- from campus to Louie's is thirty minutes; whatever time T is (and
- that hasn't been decided on yet), you can meet half an hour later
- at Louie's than you could on campus and end up eating at the same
- time. See also <since time T equals minus infinity>.
-
- <tinycrud> n. Pejorative used by habitues of older game-oriented
- <MUD> versions for TinyMuds and other user-extensible <MUD>
- variants; esp. common among users of the rather violent and
- competitive AberMud and MIST systems. These people justify the
- slur on the basis of how (allegedly) inconsistant and lacking in
- genuine feel or atmosphere the scenarios generated in user
- extendable muds can be. Other common knocks on them are that they
- feature little overall plot, bad game topology, little competitive
- interaction etc. --- not to mention the alleged horrors of the
- TinyMud code itself. This dispute is clearly a <holy war>.
-
- <tip of the ice-cube> [IBM] n. The visible part of something small and
- insignificant. Used as an ironic comment in situations where `tip
- of the iceberg' might be appropriate if the subject were actually
- nontrivial.
-
- <tired iron> [IBM] n. Hardware that is perfectly functional but enough
- behind the state of the art to have been superseded by new
- products, presumably with enough improvement in bang-per-buck that
- the old stuff is starting to look a bit like a <dinosaur>.
-
- <tits on a keyboard> n. Small bumps on certain keycaps to keep
- touch-typists registered (Usually on the `5' of a numeric keypad,
- and on `F' and `J' of a QWERTY keyboard).
-
- <TLA> /tee el ay/ [Three-Letter-Acronym] n. 1. Self-describing acronym
- for a species with which computing terminology is infested. 2. Any
- confusing acronym at all. Examples include MCA, FTP, SNA, CPU,
- MMU, SCCS, DMU, FPU, TLA, NNTP. People who like this looser usage
- argue that not all TLAs have three letters, just as not all four
- letter words have four letters. One also hears of `ETLA'
- (Extended Three Letter Acronym, pronounced /ee tee el ay/ ) being
- used to describe four-letter acronyms.
-
- <toast> 1. n. Any completely inoperable system, esp. one that has just
- crashed; "I think BUACCA is toast." 2. vt. To cause a system to
- crash accidentally, especially in a manner that requires manual
- rebooting. "Rick just toasted harp again."
-
- <toaster> n. 1. The archetypal really stupid application for an
- embedded microprocessor controller esp. `toaster oven'; often used
- in comments which imply that a scheme is inappropriate technology.
- "<DWIM> for an assembler? That'd be as silly as running UNIX on
- your toaster!" 2. A very very dumb computer. "You could run this
- program on any dumb toaster." See <bitty box>, <toaster>, <toy>.
-
- <toeprint> n. A <footprint> of especially small size.
-
- <toggle> vt. To change a BIT from whatever state it is in to the
- other state; to change from 1 to 0 or from 0 to 1. This probably
- comes from "toggle switches", such as standard light switches,
- though the word "toggle" actually refers to the mechanism that
- keeps the switch in the position to which it is flipped, rather
- than to the fact that the switch has two positions. There are four
- things you can do to a bit: set it (force it to be 1), clear (or
- zero) it, leave it alone, or toggle it. (Mathematically, one would
- say that there are four distinct boolean-valued functions of one
- boolean argument, but saying that is much less fun than talking
- about toggling bits.)
-
- <tool> 1. n. A program primarily used to create other programs, such
- as a compiler or editor or cross-referencing program. Oppose
- <app>, <operating system>. 2. [UNIX] An application program with a
- simple, `transparent' (typically text-stream) interface designed
- specifically to be used in programmed combination with other tools
- (see <filter>). 3. [MIT] vi. To work; to study. See <hack>.
-
- <toolsmith> n. The software equivalent of a tool-and-die specialist;
- one who specializes in making the tools with which other
- programmers create applications.
-
- <TOPS-10> /tops-ten/ n. DEC's proprietary OS for the fabled <PDP-10>
- machines, long a favorite of hackers but now effectively extinct.
- A fountain of hacker folklore; see Appendix A. See also <ITS>,
- <TOPS-20>, <TWENEX>, <VMS>, <operating system>. TOPS-10 was
- sometimes called BOTS-10 (from `bottoms-ten') as a comment on the
- inappropriateness of describing it as the top of anything.
-
- <TOPS-20> /tops-twen'tee/ n. See <TWENEX>.
-
- <tourist> [from MIT's ITS system] n. A guest on the system, especially
- one who generally logs in over a network from a remote location for
- games and other trivial purposes. One step below <luser>. Note;
- hackers often spell this `turist', perhaps by some sort of tenuous
- analogy with `luser'. Compare <twink>, <read-only user>
-
- <tourist information> n. Information in an on-line report that is
- not really relevant to its primary purpose, but contributes to a
- viewer's gestalt of what's going on with the software or hardware
- behind it. Whether a given piece of info falls in this category or
- not partly depends on what the user is looking for at any given
- time. The `bytes free' information at the bottom of an MS-DOS
- `dir' display is tourist information; so is the TIME
- information in a UNIX `ps(1)' display, most of the time.
-
- <touristic> adj. Having the quality of a <tourist>. Often used as
- a pejorative, as in "losing touristic scum". Often spelled
- `turistic'.
-
- <toy> n. A computer system; always used with qualifiers. 1. <nice
- toy>: One which supports the speaker's hacking style adequately.
- 2. "just a toy": A machine that yields insufficient <computron>s
- for the speaker's preferred uses. This is not condemnatory as is
- <bitty box>; toys can at least be fun. See also <Get a real
- computer!>, <bitty box>.
-
- <toy language> n. A language useful for instructional puposes or as
- a proof-of-concept for some aspect of computer science theory, but
- which is inadequate for general-purpose programming. Bad Things
- can result when a toy language is promoted as a general purpose
- solution for programming (see <bondage and discipline language>);
- the classic example is <Pascal>. Several moderately well-known
- formalisms for conceptual tasks like programming Turing machines
- also qualify as toy languages in a less negative sense.
-
- <toy problem> [AI] n. A deliberately simplified or even oversimplified
- case of a challenging problem used to investigate, prototype, or
- test algorithms for the real problem. Sometimes used pejoratively.
- See also <gedanken>.
-
- <toy program> n. 1. One which can be readily comprehended.
-
- <trap> 1. n. A program interrupt, usually used specifically to refer
- to an interrupt caused by some illegal action taking place in the
- user program. In most cases the system monitor performs some
- action related to the nature of the illegality, then returns
- control to the program. 2. vi. To cause a trap. "These
- instructions trap to the monitor." Also used transitively to
- indicate the cause of the trap. "The monitor traps all
- input/output instructions." This term is associated with
- assembler programming ("interrupt" is more common among <HLL>
- programmers) and appears to be fading into history as the role of
- assembler continues to shrink.
-
- <trap door> alt. <trapdoor> n. Syn. <back door>.
-
- <trash> vt. To destroy the contents of (said of a data structure). The
- most common of the family of near-synonyms including <mung>,
- <mangle> and <scribble>.
-
- <tree killer> [Sun] n. 1. A printer. 2. A person who wastes paper.
- This should be interpreted in a broad sense; `wasting paper'
- includes the production of <spiffy> but <content-free> documents.
- Thus, most <suits> are tree-killers.
-
- <trit> n. One base-3 digit; the amount of information conveyed by a
- choice of one of three equally likely outcomes (see also <bit>).
- These arise, for example, in the context of a <flag> that should
- actually be able to assume *three* values --- yes, no, or
- unknown.
-
- <trivial> adj. 1. In explanation, too simple to bother detailing. 2.
- Not worth the speaker's time. 3. Complex, but solvable by methods
- so well-known that anyone not utterly <cretinous> would have
- thought of them already. Hackers' notions of triviality may be
- quite at variance with those of non-hackers. See <nontrivial>,
- <uninteresting>.
-
- <troglodyte> [Commodore] n. 1. A hacker who never leaves his cubicle.
- The term `Gnoll' (from D&D) is also reported. 2. A curmudgeon
- attached to an obsolescent computing environment. The combination
- "ITS troglodyte" got flung around some during the USENET and
- email wringle-wrangle attending the 2.x.x revision of the Jargon
- File; at least one of the people it was intended to describe
- adopted it with pride.
-
- <troglodyte mode> [Rice University] n. Programming with the lights
- turned off, sunglasses on, and the (character) terminal inverted
- (black on white) because you've been up for so many days straight
- that your eyes hurt. Loud music blaring from a stereo stacked in
- the corner is optional but recommended. See <larval stage>,
- <mode>.
-
- <trojan horse> [coined by MIT-hacker-turned-spook Dan Edwards] n. A
- program designed to break security or damage a system that is
- disguised as something else benign, such as a directory lister or
- archiver. See <virus>, <worm>.
-
- <true-hacker> [analogy with "trufan" from SF fandom] n. One who
- exemplifies the primary values of hacker culture, esp. competence
- and helpfulness to other hackers. A high complement. "He spent
- six hours helping me bring up UUCP and netnews on my FOOBAR 4000
- last week --- unequivocally the act of a true-hacker." Compare
- <demigod>, oppose <munchkin>.
-
- <tty> /tee-tee-wie/ [UNIX], /ti'tee/ [ITS, but some UNIX people say
- it this way as well] n. 1. Terminal of the teletype variety,
- characterized by a noisy mechanical printer, a very limited
- character set, and poor print quality. Usage: antiquated (like the
- TTYs themselves). See also <bit-paired keyboard>. 2.
- [especially UNIX] Any terminal at all; sometimes used to refer to
- the particular terminal controlling a given job.
-
- <tube> 1. n. A CRT terminal. Never used in the mainstream sense of
- TV; real hackers don't watch TV, except for Loony Toons and Rocky &
- Bullwinkle and the occasional cheesy old swashbuckle movie. 2.
- [IBM] To send a copy of something to someone else's terminal.
- "Tube me that note?"
-
- <tube time> n. Time spent at a terminal or console; more inclusive
- than hacking time. Commonly used in discussions of what parts of
- one's environment one uses most heavily. "I find I'm spending too
- much of my tube time reading mail since I started this revision."
-
- <tunafish> n. In hackish lore, refers to the mutated punchline of an
- age-old joke to be found at the bottom of the man pages of
- `tunefs(8)' in the original <BSD> 4.2 distribution. The joke
- was removed in later releases once commercial sites started
- developing 4.2. Tunefs relates to the `tuning' of file-system
- parameters for optimum performance, and at the bottom of a few
- pages of <black art> writings was a BUGS section consisting of the
- line "You can tune a filing system, but you can't tunafish."
-
- <tune> [from automotive or musical usage] vt. To optimize a program or
- system for a particular environment, esp. by adjusting numerical
- parameters designed as <hook>s for tuning, e.g. by changing #define
- lines in C. One may "tune for time" (fastest execution) "tune for
- space" (least memory utilization) or "tune for configuration" (most
- efficient use of hardware). See <bum>, <hot spot>, <hand-hacking>.
-
- <tweak> vt. 1. To change slightly, usually in reference to a value.
- Also used synonymously with <twiddle>. If a program is almost
- correct, rather than figuring out the precise problem, you might
- just keep tweaking it until it works. See <frobnicate> and <fudge
- factor>. 2. To <tune> or <bum> a program. This is preferred usage
- in England.
-
- <TWENEX> /twe'neks/ n. The TOPS-20 operating system by DEC. TOPS-10
- was a typically crufty DEC operating system for the PDP-10, so
- TOPS-20 was the obvious name choice for the DEC-20 OS. Bolt,
- Beranek and Newman (BBN) had developed their own system, called
- <TENEX> (TEN EXecutive), and in creating TOPS-20 DEC copied TENEX
- and adapted it for the 20. The term TWENEX was therefore a
- contraction of `twenty TENEX'. DEC people cringed when they
- heard TOPS-20 referred to as `TWENEX', but the term caught on
- nevertheless. The written abbreviation `20x' was also used.
- TWENEX was successful and very popular; in fact, there was a period
- in the 1980s when it commanded almost as fervent a culture of
- partisans as UNIX or ITS --- but DEC's decision to scrap all the
- internal rivals to the VAX architecture and the relatively stodgy
- VMS OS killed the DEC-20 and put a sad end to TWENEX's brief day in
- the sun.
-
- <twiddle> n. 1. tilde (ASCII 1111110, `~'). Also called
- "squiggle", `sqiggle' (sic---pronounced /skig'l/), and
- "twaddle", but twiddle is the most common term. 2. A small and
- insignificant change to a program. Usually fixes one bug and
- generates several new ones. 3. vt. To change something in a small
- way. Bits, for example, are often twiddled. Twiddling a switch or
- knob implies much less sense of purpose than toggling or tweaking
- it; see <frobnicate>. To speak of twiddling a bit connotes
- aimlessness, and at best doesn't specify what you're doing to the
- bit; by contrast, toggling a bit has a more specific meaning (see
- <toggle>).
-
- <twink> /twink/ [UCSC] n. Equivalent to <read-only user>.
-
- <two-to-the-n> q. Used like N, but referring to bigger numbers. "I
- have two-to-the-N things to do before I can go out for lunch"
- means you probably won't show up.
-
- <two pi> q. The number of years it takes to finish one's thesis.
- Occurs in stories in the form: "He started on his thesis; two pi
- years later...".
-
- <twonkie> n. The software equivalent of a Twinkie; a useless
- `feature' added to look sexy and placate a <marketroid>.
-
- {= U =}
-
- <UBD> /yoo-bee-dee/ [abbreviation for "User Brain Damage"] An
- abbreviation used to close out trouble reports obviously due to
- utter cluelessness on the user's part. Compare <PBD>; see also
- <brain-damaged>.
-
- <undefined external reference> excl. [UNIX] Message from UNIX's
- linker. Used to indicate loose ends in an argument or discussion.
-
- <under the hood> prep. [hot-rodder talk] 1. Used to introduce the
- underlying implementation of a product (hardware, software, or
- idea). Implies that the implementation is not intuitively obvious
- from the appearance, but the speaker is about enable the listener
- to <zen> it. "Let's now look under the hood to see how ..." 2.
- Can also imply that the implementation is much simpler than the
- appearance would indicate, as in "Under the hood, we are just
- fork/execling the shell." 3. Inside a chassis, as in "Under the
- hood, this baby has a 40MHz 68030!"
-
- <uninteresting> adj. 1. Said of a problem which, while <nontrivial>,
- can be solved simply by throwing sufficient resources at it. 2.
- Also said of problems for which a solution would neither advance
- the state of the art nor be fun to design and code. True hackers
- regard uninteresting problems as an intolerable waste of time, to
- be solved (if at all) by lesser mortals. See <WOMBAT>, <SMOP>;
- oppose <interesting>.
-
- <UN*X> n. Used to refer to the Unix operating system (trademark and/or
- copyright AT&T) in writing, but avoiding the need for the ugly (tm)
- typography. Also used to refer to any or all varieties of Unixoid
- operating systems. Ironically, lawyers now say (1990) that the
- requirement for superscript-tm has no legal force, but the asterisk
- usage is entrenched anyhow. It has been suggested that there may
- be a psychological connection to practice in certain religions
- where the name of the deity is never written out in full, e.g. JHWH
- or G-d is used. See also <glob>.
-
- <unwind the stack> vi. 1. During the execution of a procedural language
- one is said to "unwind the stack" from a called procedure up to a
- caller when one discards the stack frame and any number of frames
- above it, popping back up to the level of the given caller. In C
- this is done with longjmp/setjmp; in LISP with THROW/CATCH. This
- is sometimes necessary when handling exceptional conditions. See
- also <smash the stack>. 2. People can unwind the stack as well, by
- quickly dealing with a bunch of problems "Oh hell, let's do lunch.
- Just a second while I unwind my stack".
-
- <unwind-protect> [MIT, from the name of a LISP operator] n. A task you
- must remember to perform before you leave a place or finish a
- project. "I have an unwind-protect to call my advisor."
-
- <UNIX> /yoo'niks/ [In the authors' words, "A weak pun on MULTICS"]
- n. (also `Unix') A popular interactive time-sharing system
- originally invented in 1969 by Ken Thompson after Bell Labs left
- the MULTICS project, mostly so he could play SPACEWAR on a
- scavenged PDP7. Dennis Ritchie, the inventor of C, is considered a
- co-author of the system. The turning point in UNIX's history came
- when it was reimplemented almost entirely in C in 1974, making it
- the first source-portable operating system. Fifteen years and a
- lot of changes later UNIX is the most widely used multiuser
- general-purpose operating system in the world. Many people (see
- <UNIX weenie>) consider this the single most important victory
- yet of hackerdom over industry opposition. See <Version 7>,
- <BSD UNIX>, <USG UNIX>.
-
- <UNIX conspiracy> [ITS] n. According to a conspiracy theory long
- popular among <ITS> and <TOPS-20> fans, UNIX's growth is the result
- of a plot hatched during the 70s at Bell Labs, whose intent was to
- hobble AT&T's competitors by making them dependent upon a system
- whose future evolution was to be under AT&T control. This would be
- accomplished by disseminating an operating system that is seemingly
- inexpensive and easily portable, but relatively unreliable and
- insecure. In this view, UNIX was designed to be one of the first
- computer viruses (see <virus>), but a virus spread to computers
- indirectly by people and market forces, rather than directly
- through disks and networks. Adherents of this `UNIX virus'
- theory like to cite the fact that the well-known quotation "UNIX
- is snake oil" was uttered by DEC president Kenneth Olsen shortly
- before DEC began actively promoting its own family of UNIX
- workstations.
-
- <unixism> n. A piece of code or coding technique that depends on
- the protected multi-tasking environment with relatively low
- process-spawn overhead that exists on UNIX systems. Common
- <unixism>s include: gratuitous use of `fork(2)'; the assumption that
- certain undocumented but well-known features of UNIX libraries like
- `stdio(3)' are supported elsewhere; reliance on <obscure>
- side-effects of system calls (use of `sleep(2)' with a zero argument
- to clue the scheduler that you're willing to give up your
- time-slice, for example); the assumption that freshly-allocated
- memory is empty, the assumption that it's safe to never free()
- memory, etc.
-
- <UNIX weenie> [ITS] n. 1. A derogatory pun on `UNIX wizard', common
- among hackers who use UNIX by necessity, but would prefer
- alternatives. The implication is that, while the person in
- question may consider mastery of UNIX arcana to be a wizardly
- skill, the only real skill involved is the ability to tolerate, and
- the bad taste to wallow in, the incoherence and needless complexity
- that are alleged to infest many UNIX programs. "This shell script
- tries to parse its arguments in 69 bletcherous ways. It must have
- been written by a real UNIX weenie." 2. A derogatory term for
- anyone who engages in uncritical praise of UNIX. Often appearing
- in the context "stupid UNIX weenie". See <Weenix>, <UNIX
- conspiracy>. See also <weenie>.
-
- <up> adj. 1. Working, in order. "The down escalator is up." 2.
- <bring up>: vt. To create a working version and start it. "They
- brought up a down system."
-
- <upload> /uhp'lohd/ v. 1. To transfer code or data over a digital
- comm line from a smaller `client' system to a larger `host' one. A
- transfer in the other direction is, of course, called a
- "download". 2. [speculatively] To move the essential patterns
- and algorithms which make up one's mind from one's brain into a
- computer. Only those who are convinced that such patterns and
- algorithms capture the complete essence of the self view this
- prospect with aplomb.
-
- <upthread> adv. Earlier in the discussion (see <thread>). "As Joe
- pointed out upthread..." See also <followup>.
-
- <urchin> n. See <munchkin>.
-
- <USENET> /yoos'net/ or /yooz'net/ [from "Users' Network"] n. A
- distributed bulletin board system supported mainly by UNIX
- machines, international in scope and probably the largest
- non-profit information utility in existence. As of early 1990 it
- hosts over 700 <newsgroup>s and distributes up to 15 megabytes of
- new technical articles, news, discussion, chatter, and <flamage>
- every day.
-
- <user> n. 1. Someone doing `real work' with the computer, who uses a
- computer as a means rather than an end. Someone who pays to use a
- computer. See <real user>. 2. A programmer who will believe
- anything you tell him. One who asks silly questions. (This is
- slightly unfair. It is true that users ask questions (of
- necessity). Sometimes they are thoughtful or deep. Very often
- they are annoying or downright stupid, apparently because the user
- failed to think for two seconds or look in the documentation before
- bothering the maintainer.) See <luser>. 3. Someone who uses a
- program from the outside, however skillfully, without getting into
- the internals of the program. One who reports bugs instead of just
- going ahead and fixing them. Basically, there are two classes of
- people who work with a program: there are implementors (hackers)
- and users (losers). The users are looked down on by hackers to a
- mild degree because they don't understand the full ramifications of
- the system in all its glory. (The few users who do are known as
- <real winners>.) The term is a relative one: a consummate hacker
- may be a user with respect to some program he himself does not
- hack. A LISP hacker might be one who maintains LISP or one who
- uses LISP (but with the skill of a hacker). A LISP user is one who
- uses LISP, whether skillfully or not. Thus there is some overlap
- between the two terms; the subtle distinctions must be resolved by
- context.
-
- <user-friendly> adj. Programmer-hostile. Generally used by hackers in
- a critical tone, to describe systems which hold the user's hand so
- obsessively that they make it painful for the more experienced and
- knowledgeable to get any work done. See <menuitis>, <drool-proof
- paper>, <Macintrash>, <user-obsequious>.
-
- <user-obsequious> adj. Emphatic form of <user-friendly>. Connotes a
- system so verbose, inflexible, and determinedly simple-minded that
- it is nearly unusable. "Design a system any fool can use and only
- a fool will want to use it".
-
- <USG UNIX> /yoo-ess-jee yoo'niks/ n. Refers to AT&T UNIX commercial
- versions after <Version 7>, especially System III and System V
- releases 1, 2 and 3. So called because at that time AT&T's support
- crew was called the `UNIX Support Group'. See <BSD UNIX>.
-
- <UUCPNET> n. The store-and-forward network consisting of all the
- world's UNIX machines (and others running some clone of the UUCP
- (UNIX-to-UNIX Copy Program) software). Any machine reachable via a
- <bang path> is on UUCPNET. See <network address>.
-
- {= V =}
-
- <vadding> /vad'ing/ [from VAD, a permutation of ADV (i.e. <ADVENT>),
- used to avoid a particular sysadmin's continual search-and-destroy
- sweeps for the game] n. A leisure-time activity of certain hackers
- involving the covert exploration of the `secret' parts of large
- buildings --- basements, roofs, freight elevators, maintenance
- crawlways, steam tunnels and the like. A few go so far as to learn
- locksmithing in order to synthesize vadding keys. The verb is `to
- vad'. The most extreme and dangerous form of vadding is "elevator
- rodeo", aka "elevator surfing", a sport played by wrasslin' down a
- thousand-pound elevator car with a three-foot piece of string, and
- then exploiting this mastery in various stimulating ways (such as
- elevator hopping, shaft exploration, rat-racing and the
- ever-popular drop experiments). Kids, don't try this at home!
-
- <vanilla> adj. Ordinary flavor, standard. See <flavor>. When used of
- food, very often does not mean that the food is flavored with
- vanilla extract! For example, `vanilla-flavored wonton soup' (or
- simply `vanilla wonton soup') means ordinary wonton soup, as
- opposed to hot and sour wonton soup. Applied to hardware and
- software. As in "Vanilla Version 7 UNIX can't run on a vanilla
- 11/34". Also used to orthogonalize chip nomenclature; for instance
- a 74V00 is what TI calls a 7400, as distinct from a 74LS00, etc.
- This word differs from <canonical> in that the latter means `the
- thing you always use (or the way you always do it) unless you have
- some strong reason to do otherwise', whereas <vanilla> simply
- means `ordinary'. For example, when hackers go on a <Great
- Wall>, hot-and-sour wonton soup is the <canonical> wonton soup to
- get (because that is what most of them usually order) even though
- it isn't the <vanilla> wonton soup.
-
- <vannevar> /van'@-var/ n. A bogus technological prediction or
- foredoomed engineering concept, esp. one which fails by implicitly
- assuming that technologies develop linearly, incrementally, and in
- isolation from one another when in fact the learning curve tends to
- be highly nonlinear, revolutions are common, and competition is the
- rule. The prototype was Vannevar Bush's prediction of "electronic
- brains" the size of the Empire State Building with a
- Niagara-Falls-equivalent cooling system for their tubes and relays,
- at a time when the semiconductor effect had already been
- demonstrated. Other famous vannevars have included magnetic-bubble
- memory, LISP machines, videotex, and a paper from the late 1970s
- that computed a purported ultimate limit on areal density for ICs
- which was in fact less than the routine densities of five years
- later.
-
- <vaporware> n. Products announced far in advance of any shipment
- (which may or may not actually take place).
-
- <var> /veir/ or /vahr/ n. Short for "variable". Compare <arg>,
- <param>.
-
- <VAX> /vaks/ n. 1. [from Virtual Address eXtension] The most
- successful minicomputer design in industry history, possibly
- excepting its immediate ancestor the PDP-11. Between its release in
- 1978 and eclipse by <killer micro>s after about 1986 the VAX was
- probably the favorite hacker machine of them all, esp. after the
- 1982 release of 4.2BSD UNIX (see <BSD UNIX>). Esp. noted for its
- large, assembler-programmer-friendly instruction set, an asset
- which became a liability after the RISC revolution following about
- 1985. 2. A major brand of vacuum cleaner in Britain. Cited here
- because its alleged sales pitch, "Nothing sucks like a VAX!"
- became a sort of battle-cry of RISC partisans. Ironically, the
- slogan was actually that of a rival brand called Electrolux.
-
- <VAXen> /vak'sn/ [from `oxen', perhaps influenced by `vixen'] n.
- pl. The plural standardly used among hackers for the DEC VAX
- computers. "Our installation has four PDP-10's and twenty
- <vaxen>." See <boxen>.
-
- <vaxism> n. A piece of code that exhibits <vaxocentrism> in critical
- areas. Compare <PC-ism>, <unixism>.
-
- <vaxocentrism> /vak`soh-sen'trizm/ [analogy with "ethnocentrism"] n.
- A notional disease said to afflict C programmers who persist in
- coding according to certain assumptions valid (esp. under UNIX) on
- <VAXen>, but false elsewhere (this can create substantial
- portability problems). Among these are:
-
- 1. The assumption that dereferencing a null pointer is safe because
- it is all bits zero, and location 0 is readable and zero (it may
- instead cause an illegal-address trap on non-VAXEN, and even on
- VAXEN under OSs other than BSD UNIX).
-
- 2. The assumption that pointer and integer types are the same size,
- and that pointers can be stuffed into integer variables and drawn
- back out without being truncated or mangled.
-
- 3. The assumption that a data type of any size may begin at any
- byte address in memory (for example, that you can freely construct
- and dereference a pointer to a word-sized object at an odd
- address). On many (esp. RISC) architectures better optimized for
- HLL execution speed this is invalid and can cause an illegal
- address fault or bus error.
-
- 4. The (related) assumption that there is no `padding' at the end
- of types and that in an array you can thus step right from the last
- byte of a previous component to the first byte of the next one.
-
- 5. The assumption that memory address space is globally flat and
- that the array reference foo[-1] is necessarily valid. This is not
- true on segment-addressed machines like Intel chips (yes,
- segmentation is universally considered a <brain-damaged> way to
- design but that is a separate issue).
-
- 6. The assumption that objects can be arbitrarily large with no
- special considerations (again, not true on segmented
- architectures);
-
- 7. The assumption that the parameters of a routine are stored in
- memory, contiguously, and in strictly ascending or descending order
- (fails on many RISC architectures).
-
- 8. The assumption that bits and addressable units within an object
- are ordered in the same way and that this order is a constant of
- nature (fails on <big-endian> machines).
-
- 9. The assumption that it is meaningful to compare pointers to
- different objects not located within the same array, or to objects
- of different types (the former fails on segmented architectures,
- the latter on word-oriented machines or others with multiple
- pointer formats).
-
- 10. The assumption that a pointer to any one type can freely be cast
- into a pointer to any other type (fails on word-oriented machines
- or others with multiple pointer formats).
-
- 11. The assumption that an `int' is 32 bits (fails on 286-based
- systems and even on 386 and 68000 systems under some compilers), or
- (nearly equivalently) the assumption that `sizeof(int) ==
- sizeof(long)'.
-
- 12. The assumption that argv[] is writable (fails in some
- embedded-systems C environments).
-
- 13. The assumption that characters are signed.
-
- 14. The assumption that all pointers are the same size and format,
- which means you don't have to worry about getting the types correct
- in calls (fails on word-oriented machines or others with multiple
- pointer formats).
-
- Note that a programmer can be validly be accused of vaxocentrism
- even if he/she has never seen a VAX. The terms `vaxocentricity'
- and `all-the-world's-a-VAX syndrome' have been used synonymously.
-
- <veeblefester> /vee'b@l-fes`tr/ [from the `Born Loser' comix via
- Commodore; prob. originally from Mad Magazine's `Veeblefeetzer' c.
- 1960] n. Any obnoxious person engaged in the alleged professions
- of marketing or management. Antonym of <hacker>. Compare <suit>,
- <marketroid>.
-
- <Venus flytrap> [after the plant] n. See <firewall machine>.
-
- <verbage> n. Deliberate misspelling/mispronunciation of
- <verbiage> that assimilates it to the word `garbage'. Compare
- <content-free>. More pejorative than `verbiage'.
-
- <verbiage> n. When the context involves a software or hardware
- system, this refers to <documentation>. This term borrows the
- connotations of mainstream `verbiage' to suggest that the
- documentation is of marginal utility, and that the motives from
- which it is produced have little to do with the ostensible subject.
-
- <Version 7> alt. V7 /vee se'vn/ n. The 1978 unsupported release of
- <UNIX> ancestral to all current commercial versions. Before
- the release of the POSIX/SVID standards V7's features were often
- treated as a UNIX portability baseline. See <BSD>, <USG UNIX>,
- <UNIX>. Some old-timers impatient with commercialization and
- kernel bloat still maintain that V7 was the Last True UNIX.
-
- <vi> /vee ie/, *not* /vie/ and *never* /siks/ [from `Visual
- Interface'] n. A screen editor <crufted together> by Bill Joy for
- an early <BSD> version. Became the de-facto standard UNIX editor
- and a nearly undisputed hacker favorite until the rise of <EMACS>
- after about 1984. Tends to frustrate new users no end, as it will
- neither take commands while accepting input text nor vice versa,
- and the default setup provides no indication of which mode one is
- in. Nevertheless it is still widely used (about half the
- respondents in a USENET poll preferred it), and even EMACS fans
- often resort to it as a mail editor and for small editing jobs
- (mainly because it starts up faster than bulky EMACS). See
- <holy wars>.
-
- <videotex> n.obs. An electronic service offering people the
- privilege of paying to read the weather on their television screens
- instead of having somebody read it to them for free while they brush
- their teeth. The idea bombed, because by the time videotex was
- practical the installed base of personal computers could hook up to
- timesharing services and do the things videotex might have been
- worthwhile for better and cheaper. Videotex planners way
- overestimated both the appeal of getting information from a
- computer and the cost of local intelligence at the user's end.
- Like the <gorilla arm> effect, this has been a cautionary tale to
- hackers ever since.
-
- <virgin> adj. Unused, in reference to an instantiation of a program.
- "Let's bring up a virgin system and see if it crashes again."
- Esp. useful after contracting a <virus> through <SEX>. Also, by
- extension, unused buffers and the like within a program.
-
- <virtual> [via the technical term "virtual memory", prob. fr.
- the term "virtual image" in optics] adj. 1. Common alternative
- to <logical>. 2. Simulated; performing the functions of
- something that isn't really there. An imaginative child's doll may
- be a virtual playmate. Usage: never used with compass directions.
-
- <virtual Friday> n. The last day before an extended weekend, if that
- day is not a `real' Friday. There are also "virtual Mondays"
- which are actually Tuesdays, after the three-day weekends
- associated with U.S. national holidays.
-
- <virtual reality> n. 1. Computer simulations that involve 3D graphics
- and use devices such as the Dataglove to allow the user to interact
- with the simulation. See <cyberspace>. 2. A form of network
- interaction incorporating aspects of role-playing games,
- interactive theater, improvisational comedy and `true
- confessions' magazines. In a virtual reality forum (such as
- USENET's alt.callahans newsgroup or the <MUD> experiments on
- Internet) interaction between the participants is written like a
- shared novel complete with scenery, "foreground characters" which
- may be personae utterly unlike the people who write them, and
- common "background characters" manipulable by all parties. The
- one iron law is that you may not write irreversible changes to a
- character without the consent of the person who `owns' it.
- Otherwise anything goes. See <bamf>, <cyberspace>.
-
- <virus> [from the obvious analogy with biological viruses, via SF]
- n. A cracker program that searches out other programs and
- `infects' them by embedding a copy of itself in them, so that when
- these programs are executed, the embedded virus is executed, too,
- thus propagating the `infection'. This normally happens
- transparently to the user. The virus may do nothing but propagate
- itself. Usually, however, after propagating silently for a while
- it starts doing things like writing cute messages on the terminal
- or playing strange tricks with your display (some viruses include
- nice <display hacks>). Many nasty viruses, written by
- particularly perversely-minded <cracker>s, do irreversible
- damage, like <nuking> all the user's files.
-
- In 1990, viruses have become a serious problem, especially among
- IBM PC and Macintosh users (the lack of security on these machines
- enables viruses to spread easily, even infecting the opearting
- system). The production of special anti-virus software has become
- an industry, and a number of exaggerated media reports have caused
- outbreaks of near hysteria among users, to the point where many
- <lusers> tend to blame *everything* that doesn't work as
- they had expected on virus attacks.
-
- <visionary> n. 1. One who hacks vision, in the sense of an
- Artificial Intelligence researcher working on the problem of
- getting computers to `see' things using TV cameras. (There isn't
- any problem in sending information from a TV camera to a computer.
- The problem is, how can the computer be programmed to make use of
- the camera information? See <SMOP>.) 2. [IBM] One who reads
- the outside literature.
-
- <VMS> /vee em ess/ n. DEC's proprietary operating system for their VAX
- minicomputer; one of the seven or so environments that loom largest
- in hacker folklore. Many UNIX fans generously concede that VMS
- would probably be the hacker's favorite commercial OS if UNIX
- didn't exist; though true, this makes VMS fans furious. One major
- hacker gripe with it is its slowness, thus the following limerick:
-
- There once was a system called VMS
- Of cycles by no means abstemious.
- It's chock-full of hacks
- And runs on a VAX
- And makes my poor stomach all squeamious.
- ---The Great Quux
-
- See also <VAX>, <TOPS-10>, <TOPS-20>, <UNIX>, <runic>.
-
- <voodoo programming> [from George Bush's "voodoo economics"] n.
- Use by guess or cookbook of an <obscure>, <hairy> system
- feature or algorithm which one does not truly understand. The
- implication is that the technique may not work, and if it doesn't
- one will never know why. Compare <magic>, <deep magic>,
- <heavy wizardry>, <rain dance>.
-
- <voice-net> n. Hackish way of referring to the telephone system,
- analogizing it to a digital network. USENET <sig block>s not
- uncommonly include the sender's phone next to a "Voice-Net:"
- header; common variants of this are "Voicenet" and "V-Net".
- Compare <paper-net>, <snail-mail>, <wave a dead chicken>.
-
- <vulcan nerve pinch> n. [From the old Star Trek TV series via
- Commodore Amiga hackers] The keyboard combination that forces a
- soft-boot or jump to ROM monitor (on machines that support such a
- feature). On many micros this is Ctrl-Alt-Del; on Suns, L1-A; on
- Macintoshes, it is <Cmd>-<Power switch>! Also called <three-finger
- salute>.
-
- <vulture capitalist> n. Pejorative hackerism for `venture
- capitalist', deriving from the common practice of pushing
- contracts that deprive inventors of both control over their own
- innovations and most of the money they ought to have made from
- them.
-
- {= W =}
-
- <wabbit> /wab'it/ [almost certainly from Elmer Fudd's immortal line
- `you wascawwy wabbit!'] n. 1. A legendary early hack reported on a
- System/360 at RPI and elsewhere around 1978. The program would
- reproduce itself twice every time it was run, eventually crashing
- the system. 2. By extension, any hack that includes infinite
- self-replication but is not a <virus> or <worm>. See also
- <cookie monster>.
-
- <waldo> /wol'doh/ [probably taken from the story `Waldo', by
- Robert A. Heinlein, which is where the term was first used to mean
- a remote mechanical agent controlled by a human limb] At Harvard
- (particularly by Tom Cheatham and students) this is used instead of
- <foobar> as a meta-syntactic variable and general nonsense word.
- See <foo>, <bar>, <foobar>, <quux>.
-
- <walk> n.,vt. Traversal of an actual or <logical> data structure,
- especially a linked-list data structure in <core>. See also
- <codewalker>, <silly-walk>, <clobber>.
-
- <walking drives> n. An occasional failure mode of magnetic-disk drives
- back in the days when they were 14" wide <washing machine>s. Those
- old <dinosaur> parts carried terrific angular momentum; the
- combination of a misaligned spindle or worn bearings and stick-slip
- interactions with the floor could cause them to `walk' across a
- room, lurching alternate corners forward a couple of millimeters at
- a time. There is a legend about a drive that walked over to the
- only door to the computer room and jammed it shut; the staff had to
- cut a hole in the wall in order to get at it! Walking could also be
- induced by certain patterns of drive access (a fast seek across the
- whole width of the disk, followed by a slow seek in the other
- direction). It is known that some bands of old-time hackers
- figured out how to induce disk-accessing patterns that would do
- this to particular drive models and held disk-drive races. This is
- not a joke!
-
- <wall> [WPI] interj. 1. An indication of confusion, usually spoken
- with a quizzical tone. "Wall??" 2. A request for further
- explication. Compare <octal forty>.
-
- It is said that "Wall?" really came from `talking to a blank
- wall'. It was initially used in situations where, after one
- carefully answered a question, the questioner stared at you
- blankly, having understood nothing that was explained. One would
- then throw out a "Hello, wall?" to elicit some sort of response
- from the questioner. Later, confused questioners began voicing
- "Wall?" themselves.
-
- There is an anecdote about a child in a hospital who is addressed
- by a nurse over an intercom and replies "What do you want, Wall?"
-
- <wall fallower> n. A person or algorithm which compensates for
- native stupidity by efficiently following procedures shown to have
- been effective in the past. Used of an algorithm this is not
- necessarily pejorative; it recalls `Harvey Wallbanger', the winning
- robot in an early AI contest (named, of course, after the
- cocktail). Harvey successfully solved mazes by keeping a `finger'
- on one wall and running till it came out the other end. This was
- inelegant, but mathematically guaranteed to work on
- simply-connected mazes --- and, in fact, Harvey outperformed more
- sophisticated robots that tried to `learn' each maze by building an
- internal representation of it. Used of humans the term *is*
- pejorative and implies an uncreative, bureaucratic, by-the-book
- mentality. See also <code grinder>.
-
- <wall time> n. 1. `Real world' time (what the clock on the wall shows)
- as opposed to the system clock's idea of time. 2. The real running
- time of a program, as opposed to the number of <clocks> required to
- execute it (on a timesharing system these will differ, as no one
- program gets all the <clocks>).
-
- <wallpaper> n. 1. A file containing a listing (e.g., assembly listing)
- or transcript, esp. a file containing a transcript of all or part
- of a login session. (The idea was that the LPT paper for such
- listings was essentially good only for wallpaper, as evidenced at
- Stanford where it was used as such to cover windows.) Usage: not
- often used now, esp. since other systems have developed other terms
- for it (e.g., PHOTO on TWENEX). However, the UNIX world doesn't
- have an equivalent term, so perhaps <wallpaper> will take hold
- there. The term probably originated on ITS, where the commands to
- begin and end transcript files were :WALBEG and :WALEND, with
- default file DSK:WALL PAPER. 2. The background pattern used on
- graphical workstations (this is jargon under the `Windows'
- graphical user interface to MS-DOS). 3. <wallpaper file> n. The
- file that contains the wallpaper information before it is actually
- printed on paper. (Sometimes you don't intend ever to produce a
- real paper copy of the file, because you can look at the file
- directly on your terminal, but it is still called a `wallpaper
- file'.)
-
- <wannabee> [from a term recently used to describe Madonna fans who
- dress, talk, and act like their idol; prob. originally from biker
- slang] n. A would-be <hacker>. The connotations of this term
- differ sharply depending on the age and exposure of the subject.
- Used of a person who is in or might be entering <larval stage>
- it's semi-approving; such wannabees can be annoying but most
- hackers remember that they, too were once such creatures. When
- used of any professional programmer, CS academic, writer, or
- <suit> it's derogatory, implying that said person is trying to
- cuddle up to the hacker mystique but doesn't, fundamentally, have a
- prayer of understanding what it's all about. Overuse of terms from
- this File is often an indication of the <wannabee> nature.
- Compare <newbie>.
-
- [Historical note: the wannabee phenomenon has a bit different
- flavor now (1991) than it did ten or fifteen years ago. When the
- people who are now hackerdom's tribal elders were in <larval
- stage>, the process of becoming a hacker was largely unconscious
- and unaffected by models known in popular culture --- communities
- formed spontaneously around people who, <as individuals>, felt
- irresistibly drawn to do hackerly things, and what wannabees
- experienced was a fairly pure, skill-focused desire to become
- similarly wizardly. Those days of innocence are gone forever;
- society's adaptation to the advent of the microcomputer after 1980
- included the elevation of hackers as a new kind of folk hero, and
- the result is that some people semi-consciously set out to *be
- hackers* and borrow hackish prestige by fitting the public hacker
- image. Fortunately, to do this really well one has to actually
- become a wizard. Nevertheless, old-time hackers tend to share a
- poorly-articulated disquiet about the change; among other things,
- it gives them mixed feelings about the effects of public compendia
- of lore like this one.]
-
- <wank> [Columbia University; prob. by mutation from British slang v.
- "wank", to masturbate] n.,v. Used much as <hack> is elsewhere.
- May describe (negatively) the act of hacking for hacking's sake
- ("Quit wanking, let's go get supper!") or (more positively) a
- <wizard>. Adj. "wanky" describes something particularly
- clever (a person, program, or algorithm). Conversations can also
- get wanky when there are too many wanks (here involved. This
- excess wankiness is signalled by an overload of the "wankometer"
- (compare <bogometer>). When the wankometer overloads, the
- conversation's subject must be changed, or all non-wanks will
- leave. Compare "neep-neeping" (under <neep-neep>).
-
- <wart> n. A small, crocky <feature> that sticks out of an
- otherwise <clean> design. Something conspicuous for localized
- ugliness, especially a special-case exception to a general rule.
- For example, in some versions of `csh(1)', single-quotes
- literalize every character inside them except `!'. In ANSI C,
- the ?? syntax used for escapes to foreign-language alphabets is a
- wart. See also <miswart>.
-
- <washing machine> n. Old-style hard disks in floor-standing cabinets.
- So called because of the size of the cabinet and the
- `top-loading' access to the media packs --- and, of course, they
- were always set on `spin cycle'. The washing-machine idiom
- transcends language barriers; it's even used in Russian hacker
- jargon. See <walking drives>. The thick channel cables connecting
- these were called "bit hoses" (see <hose>).
-
- <water MIPS> n. Large, water-cooled machines of
- either today's ECL-supercomputer flavor or yesterday's traditional
- <mainframe type>.
-
- <wave a dead chicken> v. To perform a ritual in the direction of
- crashed software or hardware which one believes to be futile but
- are nevertheless necessary so that others are satisfied that an
- appropriate degree of effort has been expended. "I'll wave a dead
- chicken over the source code, but I really think we've run into an
- OS bug." Compare <voodoo programming>, <rain dance>.
-
- <weasel> [Cambridge] A naive user, one who deliberately or
- accidentally does things which are stupid or ill-advised. Roughly
- synonymous with <luser>.
-
- <wedged> [from a common description of recto-cranial inversion] adj.
- 1. To be stuck, incapable of proceeding without help. This is
- different from having crashed. If the system has crashed, then it
- has become totally non-functioning. If the system is wedged, it is
- trying to do something but cannot make progress; it may be capable
- of doing a few things, but not be fully operational. For example,
- the system may become wedged if the disk controller fries; there
- are some things you can do without using the disks, but not many.
- Being wedged is slightly milder than being <hung>. Also see
- <gronk>, <locked up>, <hosed>. 2. This term is sometimes used to
- describe a <deadlock> condition. 3. Often refers to humans
- suffering misconceptions. 4. [UNIX] Specifically used to describe
- the state of a TTY left in a losing state by abort of a
- screen-oriented program or one that has messed with the line
- discipline in some obscure way. 5. <wedgitude> (wedj'i-tood) n.
- The quality or state of being wedged.
-
- <weeble> /weeb'l/ [Cambridge] interj. Use to denote frustration,
- usually at amazing stupidity. "I stuck the disk in upside down."
- "Weeble..." Compare <gurfle>.
-
- <weeds> n. Refers to development projects or algorithms that have no
- possible relevance or practical application. Comes from `off in
- the weeds'. Used in phrases like "lexical analysis for microcode
- is serious weeds..."
-
- <weenie> n. 1. The semicolon character, `;' (ASCII 0111011).
- 2. When used with a qualifier (for example, as in <UNIX weenie>,
- VMS weenie, IBM weenie) can become either an insult or a term of
- praise, depending on context, tone of voice, and whether or not it
- is applied by a person who considered him/herself to be the same
- sort of weenie. Implies that the weenie has put a major investment
- of time, effort and concentration into the area indicated; whether
- this is positive or negative depends on the hearer's judgement of
- how the speaker feels about that area. See also <bigot>.
-
- <Weenix> [ITS] n. A derogatory term for <UNIX>, derived from <UNIX
- weenie>.
-
- <well-behaved> adj. 1. [primarily <MS-DOS>] Said of software
- conforming to system interface guidelines and standards. Well
- behaved software uses the operating system to do chores such as
- keyboard input, allocating memory and drawing graphics. Oppose
- <ill-behaved>. 2. Software that does its job quietly and without
- counterintuitive effects. Esp. said of software having an
- interface spec sufficiently simple and well-defined that it can be
- used as a <tool> by other software.
-
- <well-connected> adj. Said of a computer installation, this means it
- has reliable email links with the network and/or relays a large
- fraction of available <USENET> newsgroups. "Well-known" can
- be almost synonymous, but also implies that the site's name is
- familiar to many (due perhaps to an archive service or active
- USENET users).
-
- <wetware> [prob. from the novels of Rudy Rucker] n. 1. The human
- brain, as opposed to computer hardware or software (as in "Wetware
- has at most 7 plus or minus 2 registers"). 2. Human beings
- (programmers, operators, administrators) attached to a computer
- system, as opposed to the system's hardware or software.
-
- <what> n. The question mark character (`?', ASCII 0111111).
- Syn. <ques>. Usage: rare, used particularly in conjunction with
- <wow>.
-
- <wheel> [from Twenex, q.v.] n. A privileged user or <wizard> (sense
- #2). The term was invented on the TENEX operating system, and
- carried over to <TWENEX>, Xerox-IFS, and others. It entered the
- UNIX culture from <TWENEX> and has been gaining popularity there
- (esp. at university sites). Privilege bits are sometimes called
- "wheel bits". The state of being in a privileged logon is
- sometimes called "wheel mode". See also <root>.
-
- <wheel wars> [Stanford University] A period in <larval stage> during
- which student wheels hack each other by attempting to log each
- other out of the system, delete each other's files, and otherwise
- wreak havoc, usually at the expense of the lesser users.
-
- <White Book> n. Syn. <K&R>.
-
- <whizzy> (sometimes `wizzy') [Sun] adj. A <cuspy> program; usually
- feature-rich and well presented.
-
- <WIBNI> [Bell Labs, Wouldn't It Be Nice If] n. What most requirements
- documents and specifications consist entirely of. Compare <IWBNI>.
-
- <widget> n. 1. A meta-thing. Used to stand for a real object in
- didactic examples (especially database tutorials). Legend has it
- that the original widgets were holders for buggy whips. 2. [poss.
- from `window gadget'] A user interface object in X Window System
- graphical user interfaces.
-
- <Winchester> n. Informal term for the now-standard `floating-head'
- magnetic-disk technology in which the read-write head planes over
- the disk surface on an air cushion. The name arose because the
- original 1973 engineering prototype for what later became the IBM
- 3340 featured two 30-megabyte volumes; 30-30 became `Winchester'
- when somebody noticed the similarity to the common term for a
- famous Winchester rifle (in the latter, the first 30 referred to
- calibre and the second to the grain weight of the charge).
-
- <wiggles> n. [scientific computation] In solving partial differential
- equations by finite difference and similar methods, wiggles are
- sawtooth (up-down-up-down) oscillations at the shortest wavelength
- representable on the grid. If an algorithm is unstable, this is
- often the most unstable waveform, so it grows to dominate the
- solution. Alternatively, stable (though inaccurate) wiggles can be
- generated near a discontinuity by a Gibbs phenomenon.
-
- <WIMP environment> n. [acronymic from Window, Icon, Mouse, Pointer] A
- graphical-user-interface based environment, as described by a
- hacker who prefers command-line interfaces for their superior
- flexibility and extensibility.
-
- <win> [from MIT jargon] 1. vi. To succeed. A program wins if no
- unexpected conditions arise. 2. Success, or a specific instance
- thereof. A pleasing outcome. A <feature>. 3. <big win>: n.
- Serendipity. Emphatic forms: "moby win", "super win",
- "hyper-win" (often used interjectively as a reply). For some
- reason "suitable win" is also common at MIT, usually in reference
- to a satisfactory solution to a problem. 4. <win big> vi. To
- experience serendipity. "I went shopping and won big; there was a
- two-for-one sale." 5. <win win> interj. Expresses pleasure at a
- <win>. Oppose <lose>.
-
- <winged comments> n. Comments set on the same line as code, as
- opposed to <box comments>. In C, for example:
-
- d = sqrt(x*x + y*y); /* d = distance of (x,y) from 0,0 */
-
- Generally these refer only to the action(s) taken on that line.
- See also <box comment>.
-
- <winnage> /win'@j/ n. The situation when a lossage is corrected, or
- when something is winning. Quite rare. Usage: also quite rare.
-
- <winner> 1. n. An unexpectedly good situation, program, programmer or
- person. 2. "real winner": Often sarcastic, but also used as high
- praise.
-
- <winnitude> /win'i-tood/ n. The quality of winning (as opposed to
- <winnage>, which is the result of winning). "That's really great!
- Boy, what winnitude!"
-
- <wirehead> n. [prob. from notional SF slang for an electrical brain
- stimulation junkie] 1. A hardware hacker, especially one who
- concentrates on communications hardware. 2. An expert in local
- area networks. A wirehead can be a network software wizard too,
- but will always have the ability to deal with network hardware,
- down to the smallest component. Wireheads are known for their
- ability to lash up an Ethernet terminator from spare resistors, for
- example.
-
- <wish list> n. A list of desired features or bug fixes that probably
- won't get done for a long time, usually because the person
- responsible for the code is too busy or can't think of a clean way
- to do it.
-
- <wizard> n. 1. A person who knows how a complex piece of software
- or hardware works (that is, who <grok>s it); esp. someone who
- can find and fix bugs quickly in an emergency. This term differs
- somewhat from <hacker>. Someone is a hacker if he has general
- hacking ability, but is only a wizard with respect to something if
- he has specific detailed knowledge of that thing. A good hacker
- could become a wizard for something given the time to study it. 2.
- A person who is permitted to do things forbidden to ordinary
- people. For example, an Adventure wizard at Stanford may play the
- Adventure game during the day, which is forbidden (the program
- simply refuses to play) to most people because it consumes too many
- <cycle>s. 3. A UNIX expert, esp. a UNIX systems programmer. This
- usage is well enough established that `UNIX Wizard' is a recognized
- job title at some corporations and to most headhunters. See
- <guru>.
-
- <wizard book> n. Abelson and Sussman's `Structure and Interpretation
- of Computer Programs', an excellent CS text used in introductory
- courses at MIT. So called because of the wizard on the cover of
- the MIT Press edition.
-
- <wizard mode> [from nethack] n. A special access mode of a program or
- system, usually passworded, that permits some users godlike
- privileges. Generally not used for operating systems themselves
- (<root mode> or <wheel mode> would be used instead).
-
- <wizardly> adj. Pertaining to wizards. A wizardly <feature> is one
- that only a wizard could understand or use properly.
-
- <WOMBAT> [Waste Of Money, Brains and Time] adj. Applied to problems
- which are both profoundly <uninteresting> in themselves and
- unlikely to benefit anyone interesting even if solved. Often used
- in fanciful constructions such as "wrestling with a wombat". See
- also <crawling horror>, <SMOP>. Also note the rather different
- usage as a meta-syntactic variable under COMMONWEALTH HACKISH
-
- <wonky> /won'kee/ [from Australian slang] adj. Yet another approximate
- synonym for <broken>. Specifically connotes a malfunction which
- produces behavior seen as crazy, humorous, or amusingly perverse.
- "That was the day the printer's font logic went wonky and
- everybody's listings came out in Elvish." Also in "wonked out".
- See <funky>, <demented>.
-
- <workaround> n. A temporary <kluge> inserted in a system under
- development or test in order to avoid the effects of a <bug> or
- <misfeature> so that work can continue. Theoretically,
- workarounds are always replaced by fixes; in practice, customers
- often find themselves living with workarounds in the first couple
- of releases. "The code died on nul characters in the input, so I
- fixed it to abort with an error message when it sees one"
- "That's not a fix, that's a workaround!"
-
- <working as designed> [IBM] adj. In conformance to a wrong or
- inappropriate specification; useful, but mis-designed. Frequently
- used either as a sardonic comment on a program's utility, and
- unfortunately also as a bogus reason for not accepting a criticism
- or suggestion. See <BAD>.
-
- <worm> [from `tapeworm' in John Brunner's `The Shockwave
- Rider', via XEROX PARC] n. A program that propagates itself over a
- network, reproducing itself as it goes. See <virus>. Nowadays
- the term has negative connotations, as it is assumed that only
- crackers write worms. Perhaps the best known example was Robert T.
- Morris's `Internet Worm' in '88, a `benign' one that got out of
- control and hogged hundreds of Suns and VAXen nationwide. See also
- <cracker>, <trojan horse>, <ice>.
-
- <wound around the axle> adj. In an infinite loop. Often used by older
- computer types.
-
- <wow> See <bang>.
-
- <wrap around> vi. (also n. `wraparound' and v. shorthand `wrap') 1.
- This is jargon in its normal computer usage, i.e., describing
- the action of a counter that starts over at 0 or at "minus
- infinity" after its maximum value has been reached, and continues
- incrementing, either because it is programmed to do so, or because
- of an overflow like a car's odometer starting over at 0. 2. To
- <change phase> gradually and continuously by maintaining a steady
- wake-sleep cycle somewhat longer than 24 hours, e.g. living 6 long
- days in a week.
-
- <write-only code> [a play on "read-only memory"] n. Code
- sufficiently arcane, complex, or ill-structured that it cannot be
- modified or even comprehended by anyone but the original author,
- and possibly not even by him/her. A <Bad Thing>.
-
- <write-only language> n. A language with syntax (or semantics)
- sufficiently dense and bizarre that any routine of significant size
- is <write-only code>. A sobriquet often applied to APL,
- though <INTERCAL> and <TECO> certainly deserve it more.
-
- <write-only memory> n. The obvious antonym to "read-only memory".
- In frustration with the long and seemingly useless chain of
- approvals required of component specifications, during which no
- actual checking seemed to occur, an engineer at Signetics created a
- specification for a write-only memory, and included it with a bunch
- of other specifications to be approved. This inclusion only came
- to the attention of Signetics when regular customers started
- calling and asking for pricing information. Signetics published a
- corrected edition of the data book, and requested the return of the
- `erroneous' ones. Later, about 1974, Signetics bought a double
- page spread in Electronics magazine's April issue, and used the
- spec as an April Fools' day joke. Instead of the more conventional
- characteristic curves, the 25120 "fully encoded, 9046 x N, Random
- Access, write-only-memory" data sheet included diagrams of "bit
- capacity vs. Temp.", "Iff vs. Vff", "Number of pins remaining
- vs. number of socket insertions" and "AQL vs. selling price".
- The 25120 required a 6.3 VAC VFF supply, a +10V VCC, and VDD of 0V,
- +/- 2%.
-
- <Wrong Thing, the> n. A design, action or decision which is clearly
- incorrect or inappropriate. Often capitalized; always emphasized
- in speech as if capitalized. The opposite of the Right Thing; more
- generally, anything that is not the Right Thing. In cases where
- `the good is the enemy of the best', the merely good, while good,
- is nevertheless the Wrong Thing.
-
- <wugga wugga> /wuh'g@ wuh'g@/ n. Imaginary sound that a computer
- program makes as it labors with a tedious or difficult task.
- Compare <cruncha cruncha cruncha>, <grind> (sense #4).
-
- <WYSIWYG> /wiz'ee-wig/ adj. User interface (usu. text or graphics
- editor) characterized as being "what you see is what you get"; as
- opposed to one which uses more-or-less obscure commands which do
- not result in immediate visual feedback. The term can be mildly
- derogatory, as it is often used to refer to dumbed-down
- <user-friendly> interfaces targeted at non-programmers, while a
- hacker has no fear of obscure commands. On the other hand, EMACS
- was one of the very first WYSIWYG editors, replacing (actually, at
- first overlaying) the extremely obscure, command-based TECO.
- [Oddly enough, this term has already made it into the OED --- ESR]
-
- {= X =}
-
- <X> /eks/ n. 1. Used in various speech and writing contexts in
- roughly its algebraic sense of `unknown within a set defined by
- context' (compare <N>). Thus: the abbreviation 680x0 stands for
- 68000, 68010, 68020, 68030 or 68040, and 80x86 stands for 80186,
- 80286 80386 or 80486 (note that a UNIX hacker might write these as
- 680[01234]0 and 80[1234]86 or 680?0 and 80?86 respectively; see
- <glob>). 2. [from the name of an earlier window system called
- `W'] An over-sized, over-featured, over-engineered window system
- developed at MIT and widely used on UNIX systems.
-
- <xor> /eks'ohr/ conj. Exclusive or. `A xor B' means `A or B, but
- not both'. Example: "I want to get cherry pie xor a banana
- split." This derives from the technical use of the term as a
- function on truth-values that is true if either of two arguments is
- true but not both.
-
- <xref> /eks'ref/ vt.,n. Hackish standard abbreviation for
- "cross-reference".
-
- <XXX> /eks-eks-eks/ n. A marker that attention is needed. Commonly
- used in program comments to indicate areas that are <kluged up> or
- need to be. Some hackers liken XXX code to pornographic movies
- that contain the symbol.
-
- <xyzzy> /eks-wie-zee-zee-wie/, /ik-zi'zee/, /eks-wie-ziz'ee/; in
- Britain, /eks-wie-zed-zed-wie/. [from the ADVENT game] adj. The
- <canonical> `magic word'. This comes from <ADVENT>, in which
- the idea is to explore an underground cave with many rooms to
- collect treasure. If you type `xyzzy' at the appropriate time, you
- can move instantly between two otherwise distant points. If,
- therefore, you encounter some bit of <magic>, you might remark on
- this quite succinctly by saying simply "Xyzzy"! Example:
- "Ordinarily you can't look at someone else's screen if he has
- protected it, but if you type quadruple-bucky-clear the system will
- let you do it anyway." "Xyzzy!" Xyzzy has actually been
- implemented as an undocumented no-op command on several OSs; in
- Data General's AOS/VS, for example, it would typically respond
- "Nothing happens." just as <ADVENT> did if the magic was
- invoked at the wrong spot or before a player had performed the
- action that enabled the word. See also <plugh>.
-
- {= Y =}
-
- <YA-> [Yet Another...] abbrev. In hackish acronyms this almost
- invariably expands to <Yet Another> following the precedent set by
- UNIX `yacc(1)'. See <YABA>.
-
- <YABA> /ya'buh/ [Cambridge] n. Yet Another Bloody Acronym. Whenever
- some program is being named, someone invariably suggests that it be
- given a name which is acronymic. The response from those with a
- trace of originality is to remark ironically that the proposed name
- would then be `YABA-compatible'. Also used in response to questions
- like "What is WYSIWYG?" "YABA." See also <TLA>.
-
- <YAUN> /yawn/ [Acronym for "Yet Another UNIX Nerd"] n. Reported
- from the San Diego Computer Society (predominantly a microcomputer
- users' group) as a good-natured punning insult aimed at UNIX
- zealots.
-
- <Yet Another> adj. [From UNIX's `yacc(1)', "Yet Another Compiler-
- Compiler" LALR parser generator] 1. Of your own work: humorous
- allusion often used in titles to acknowledge that the topic is not
- original --- though the content is. As in `Yet Another AI Group'
- or `Yet Another Simulated Annealing Algorithm'. 2. Of other's
- work: describes something of which there are far too many. See
- also <YA->, <YABA>, <YAUN>.
-
- <You are not expected to understand this.> cav. [UNIX] Canonical
- comment describing something <magic> or too complicated to bother
- explaining properly. From a comment in the context-switching code
- of the V6 UNIX kernel.
-
- <You know you've been hacking too long when...> The set-up line
- for a genre of one-liners told by hackers about themselves. These
- include the following:
-
- * not only do you check your email more often than your paper
- mail, but you remember your <network address> faster than your
- postal one.
- * your <SO> kisses you on the neck and the first thing you
- think is "Uh, oh, <priority interrupt>".
- * you go to balance your checkbook and discover that you're
- doing it in octal.
- * your computers have a higher street value than your car.
- * `round numbers' are powers of 2, not 10.
- * you've woken up more than once to recall of a dream in
- some programming language.
- * you realize you've never met half of your best friends.
-
- All but one of these have been reliably reported as hacker traits
- (some of them quite often). Even hackers may have trouble spotting
- the ringer.
-
- <Your mileage may vary.> cav. [from the standard disclaimer attached
- to EPA mileage ratings by American car manufacturers] A ritual
- warning often found in UNIX freeware distributions. Translates
- roughly as "Hey, I tried to write this portably but who
- *knows* what'll happen on your system?"
-
- <Yow!> /yow/ [from Zippy the Pinhead comix] interj. Favored hacker
- expression of humorous surprise or emphasis. "Yow! Check out what
- happens when you twiddle the foo option on this display hack!"
- Compare <gurfle>.
-
- <yoyo mode> n. State in which the system is said to be when it
- rapidly alternates several times between being up and being down.
- Interestingly (and perhaps not by coincidence), many hardware
- vendors give out free yoyos at Usenix exhibits.
-
- <Yu-Shiang whole fish> /yoo-shyang hohl fish/ n. obs. The character
- gamma (extended SAIL ASCII 1001011), which with a loop in its tail
- looks like a little fish swimming down the page. The term is
- actually the name of a Chinese dish in which a fish is cooked whole
- (not <parse>d) and covered with Yu Shiang sauce. Usage: was used
- primarily by people on the MIT LISP Machine, which could display
- this character on the screen. Tends to elicit incredulity from
- people who hear about it second-hand.
-
- {= Z =}
-
- <zap> 1. n. Spiciness. 2. vt. To make food spicy. 3. vt. To make
- someone `suffer' by making his food spicy. (Most hackers love
- spicy food. Hot-and-sour soup is considered wimpy unless it makes
- you blow your nose for the rest of the meal.) See <zapped>. 4.
- To modify, usually to correct. Also implies surgical precision. In
- some communities, this used to describe modifying a program's
- binary executable. In the IBM mainframe world, binary patches are
- applied to programs or to the OS with a program called `superzap',
- whose file name is `IMASPZAP' (I Am A SuperZap) 6. To erase or
- reset.
-
- <zapped> adj. Spicy. This term is used to distinguish between food
- that is hot (in temperature) and food that is *spicy*-hot.
- For example, the Chinese appetizer Bon Bon Chicken is a kind of
- chicken salad that is cold but zapped. See also ORIENTAL FOOD,
- <laser chicken>. See <zap>, senses #1 and #2.
-
- <zen> vt. To figure out something by meditation, or by a sudden flash
- of enlightenment. Originally applied to bugs, but occasionally
- applied to problems of life in general. "How'd you figure out the
- buffer allocation problem?" "Oh, I zenned it". Contrast <grok>,
- which connotes a time-extended version of zenning a system.
- Compare <hack mode>.
-
- <zero> vt. 1. To set to zero. Usually said of small pieces of data,
- such as bits or words. 2. To erase; to discard all data from.
- Said of disks and directories, where `zeroing' need not involve
- actually writing zeroes throughout the area being zeroed. One may
- speak of something being "logically zeroed" rather than being
- "physically zeroed". See <scribble>.
-
- <zero-content> adj. Syn. <content-free>.
-
- <zeroth> /zee'rohth/ adj. First. Among software designers, comes
- from C's 0-based indexing of arrays. Hardware people also tend to
- start counting at zero instead of one; this is natural since e.g.
- the 256 states of 8 bits correspond to the binary numbers
- 0,1,...,255 and the digital devices known as `counters' count in
- this way.
-
- Hackers and computer scientists often like to call the first
- chapter of a publication `Chapter 0', especially if it is of an
- introductory nature. In recent years this trait has also been
- observed among many pure mathematicians (even those who usually
- won't touch a computer with a ten-foot pole).
-
- <zip> [primarily MSDOS] vt. to create a compressed archive from a
- group of files using PKWare's PKZIP or a compatible archiver. Its
- use is spreading now that portable implementations of the algorithm
- have been written. Commonly used as "I'll zip it up and send it
- to you". See <arc>, <tar and feather>.
-
- <zipperhead> [IBM] n. A person with a closed mind.
-
- <zombie> [UNIX] n. A process which has died but has not yet
- relinquished its process table slot (because the parent process
- hasn't executed a `wait(2)' for it yet). These show up in `ps(1)'
- listings occasionally. Compare <orphan>.
-
- <zork> /zork/ n. Second of the great early experiments in computer
- fantasy gaming; see <ADVENT>. Originally written on MIT-DMS during
- the late seventies, later distributed with BSD UNIX and
- commercialized as `The Zork Trilogy' by Infocom.
-
-
-
- Hacker Folklore
- ***************
-
- This appendix contains several fables and legends which illuminate
- the meaning of various entries in the main text. All of this material
- except THE UNTIMELY DEMISE OF MABEL THE MONKEY appeared in the 1983
- paper edition of the Jargon File (but not in the previous on-line
- versions).
-
- The Meaning of `Hack'
- =====================
-
- "The word <hack> doesn't really have 69 different meanings", according
- to Phil Agre, an MIT hacker. "In fact, <hack> has only one meaning, an
- extremely subtle and profound one which defies articulation. Which
- connotation is implied by a given use of the word depends in similarly
- profound ways on the context. Similar remarks apply to a couple of
- other hacker words, most notably <random>."
-
- Hacking might be characterized as "an appropriate application of
- ingenuity". Whether the result is a quick-and-dirty patchwork job or
- a carefully crafted work of art, you have to admire the cleverness
- that went into it.
-
- An important secondary meaning of <hack> is `a creative practical
- joke'. This kind of <hack> is often easier to explain to non-hackers
- than the programming kind. Accordingly, here are three examples of
- practical joke hacks:
-
- In 1961, students from Caltech (California Institute of Technology in
- Pasadena) hacked the Rose Bowl football game. One student posed as a
- reporter and `interviewed' the director of the University of
- Washington card stunts (such stunts involve people in the stands who
- hold up colored cards to make pictures). The reporter learned exactly
- how the stunts were operated, and also that the director would be out
- to dinner later.
-
- While the director was eating, the students (who called themselves the
- `Fiendish Fourteen') picked a lock and stole one of the direction
- sheets for the card stunts. They then had a printer run off 2300
- copies of the sheet. The next day they picked the lock again and
- stole the master plans for the stunts, large sheets of graph paper
- colored in with the stunt pictures. Using these as a guide, they
- carefully made `corrections' for three of the stunts on the
- duplicate instruction sheets. Finally, they broke in once more,
- replacing the stolen master plans and substituting the stack of
- altered instruction sheets for the original set.
-
- The result was that three of the pictures were totally different.
- Instead of spelling "WASHINGTON", the word "CALTECH" was flashed.
- Another stunt showed the word "HUSKIES", the Washington nickname,
- but spelled it backwards. And what was supposed to have been a
- picture of a husky instead showed a beaver. (Both Caltech and MIT use
- the beaver as a mascot. Beavers are nature's engineers.)
-
- After the game, the Washington faculty athletic representative said,
- "Some thought it ingenious; others were indignant." The Washington
- student body president remarked, "No hard feelings, but at the time
- it was unbelievable. We were amazed."
-
- This is now considered a classic hack, particularly because revising
- the direction sheets constituted a form of programming not unlike
- computer programming.
-
- Another classic hack:
-
- Some MIT students once illicitly used a quantity of thermite to weld a
- trolley car to its tracks. The hack was actually not dangerous, as
- they did this at night to a parked trolley. It took the transit
- people quite a while to figure out what was wrong with the trolley,
- and even longer to figure out how to fix it. They ended up putting
- jacks under the trolley, and cutting the section of track on either
- side of the wheel with oxyacetalene torches. Then they unbolted the
- wheel, welded in a new piece of track, bolted on a new wheel, and
- removed the jacks. The hackers sneaked in the next night and stole the
- piece of track and wheel!
-
- The piece of trolley track with the wheel still welded to it was later
- used as the trophy at the First Annual All-Tech Sing. They carted it
- in on a very heavy duty dolly up the freight elevator of the Student
- Center. Six feet of rail and a trolley wheel is a *lot* of
- steel.
-
- Though this displayed some cleverness, the side-effect of expensive
- property damage was definitely an esthetic minus. The best hacks are
- harmless ones.
-
- And another:
-
- One winter, late at night, an MIT fraternity hosed down an underpass
- that is part of a commuter expressway near MIT. This produced an ice
- slick that `trapped' a couple of small cars: they didn't have the
- momentum or traction to climb out of the underpass. While it was
- clever to apply some simple science to trap a car, it was also very
- dangerous as it could have caused a collision. Therefore this was a
- very poor hack overall.
-
- And yet another:
-
- On November 20, 1982, MIT hacked the Harvard-Yale football game. Just
- after Harvard's second touchdown against Yale in the second quarter, a
- small black ball popped up out of the ground at the 40-yard line, and
- grew bigger, and bigger, and bigger. The letters "MIT" appeared all
- over the ball. As the players and officials stood around gawking, the
- ball grew to six feet in diameter and then burst with a bang and a
- cloud of white smoke.
-
- As the Boston Globe later reported, "If you want to know the truth,
- M.I.T. won The Game."
-
- The prank had taken weeks of careful planning by members of MIT's
- Delta Kappa Epsilon fraternity. The device consisted of a weather
- balloon, a hydraulic ram powered by Freon gas to lift it out of the
- ground, and a vacuum-cleaner motor to inflate it. They made eight
- separate expeditions to Harvard Stadium between 1 and 5 AM, in which
- they located an unused 110-volt circuit in the stadium, and ran buried
- wiring from the stadium circuit to the 40-yard line, where they buried
- the balloon device. When the time came to activate the device, two
- fraternity members had merely to flip a circuit breaker and push a
- plug into an outlet.
-
- This stunt had all the earmarks of a perfect hack: surprise,
- publicity, the ingenious use of technology, safety, and harmlessness.
- The use of manual control allowed the prank to be timed so as not to
- disrupt the game (it was set off between plays, so the outcome of the
- game would not be unduly affected). The perpetrators had even
- thoughtfully attached a note to the balloon explaining that the device
- was not dangerous and contained no explosives.
-
- Harvard president Derek Bok commented: "They have an awful lot of
- clever people down there at MIT, and they did it again." President
- Paul E. Gray of MIT said, "There is absolutely no truth to the rumor
- that I had anything to do with it, but I wish there were." Such is
- the way of all good hacks.
-
- Finally, here is a great story about one of the classic computer hacks.
-
- Back in the mid-1970s, several of the system support staff at Motorola
- discovered a relatively simple way to crack system security on the
- Xerox CP-V timesharing system. Through a simple programming strategy,
- it was possible for a user program to trick the system into running a
- portion of the program in `master mode' (supervisor state), in which
- memory protection does not apply. The program could then poke a large
- value into its `privilege level' byte (normally write-protected) and
- could then proceed to bypass all levels of security within the
- file-management system, patch the system monitor, and do numerous
- other interesting things. In short, the barn door was wide open.
-
- Motorola quite properly reported this problem to XEROX via an official
- `level 1 SIDR' (a bug report with a perceived urgency of `needs to be
- fixed yesterday'). Because the text of each SIDR was entered into a
- database that could be viewed by quite a number of people, Motorola
- followed the approved procedure: they simply reported the problem as
- `Security SIDR', and attached all of the necessary documentation,
- ways-to-reproduce, etc. separately.
-
- Xerox sat on their thumbs...they either didn't realize the severity of
- the problem, or didn't assign the necessary operating-system-staff
- resources to develop and distribute an official patch.
-
- Months passed. The Motorola guys pestered their Xerox field-support
- rep, to no avail. Finally they decided to take Direct Action, to
- demonstrate to Xerox management just how easily the system could be
- cracked, and just how thoroughly the system security systems could be
- subverted.
-
- They dug around in the operating-system listings, and devised a
- thoroughly devilish set of patches. These patches were then
- incorporated into a pair of programs called Robin Hood and Friar Tuck.
- Robin Hood and Friar Tuck were designed to run as `ghost jobs'
- (daemons, in Unix terminology); they would use the existing loophole
- to subvert system security, install the necessary patches, and then
- keep an eye on one another's statuses in order to keep the system
- operator (in effect, the superuser) from aborting them.
-
- So...one day, the system operator on the main CP-V software
- development system in El Segundo was surprised by a number of unusual
- phenomena. These included the following:
-
- * Tape drives would rewind and dismount their tapes in the middle of a
- job.
- * Disk drives would seek back and forth so rapidly that they'd attempt
- to walk across the floor (see <walking drives>).
- * The card-punch output device would occasionally start up of itself
- and punch a <lace card> (every hole punched). These would usually
- jam in the punch.
- * The console would print snide and insulting messages from Robin Hood
- to Friar Tuck, or vice versa.
- * The Xerox card reader had two output stackers; it could be
- instructed to stack into A, stack into B, or stack into A unless a
- card was unreadable, in which case the bad card was placed into
- stacker B. One of the patches installed by the ghosts added some
- code to the card-reader driver... after reading a card, it would flip
- over to the opposite stacker. As a result, card decks would divide
- themselves in half when they were read, leaving the operator to
- recollate them manually.
-
- There were some other effects produced, as well.
-
- Naturally, the operator called in the operating-system developers. They
- found the bandit ghost jobs running, and X'ed them... and were once
- again surprised. When Robin Hood was X'ed, the following sequence of
- events took place:
-
- !X id1
-
- id1: Friar Tuck... I am under attack! Pray save me!
- id1: Off (aborted)
-
- id2: Fear not, friend Robin! I shall rout the Sheriff of
- Nottingham's men!
-
- id1: Thank you, my good fellow!
-
- Each ghost-job would detect the fact that the other had been killed,
- and would start a new copy of the recently-slain program within a few
- milliseconds. The only way to kill both ghosts was to kill them
- simultaneously (very difficult) or to deliberately crash the system.
-
- Finally, the system programmers did the latter... only to find that
- the bandits appeared once again when the system rebooted! It turned
- out that these two programs had patched the boot-time image (the
- /vmunix file, in Unix terms) and had added themselves to the list of
- programs that were to be started at boot time...
-
- The Robin Hood and Friar Tuck ghosts were finally eradicated when the
- system staff rebooted the system from a clean boot-tape and
- reinstalled the monitor. Not long thereafter, Xerox released a patch
- for this problem.
-
- It is alleged that Xerox filed a complaint with Motorola's management about
- the merry-prankster actions of the two employees in question. It is
- not recorded that any serious disciplinary action was taken against
- either of them.
-
- The Untimely Demise of Mabel the Monkey
- =======================================
-
- The following, modulo a couple of inserted commas and capitalization
- changes for readability, is the exact text of a famous USENET message.
- The reader may wish to review the definitions of <PM> and <mount> in the main
- text before continuing.
-
- Date: Wed 3 Sep 86 16:46:31-EDT
- From: "Art Evans" <Evans@TL-20B.ARPA>
- Subject: Always Mount a Scratch Monkey
- To: Risks@CSL.SRI.COM
-
- My friend Bud used to be the intercept man at a computer vendor for
- calls when an irate customer called. Seems one day Bud was sitting at
- his desk when the phone rang.
-
- Bud: Hello. Voice: YOU KILLED MABEL!!
- B: Excuse me? V: YOU KILLED MABEL!!
-
- This went on for a couple of minutes and Bud was getting nowhere, so he
- decided to alter his approach to the customer.
-
- B: HOW DID I KILL MABEL? V: YOU PM'ED MY MACHINE!!
-
- Well, to avoid making a long story even longer, I will abbreviate what had
- happened. The customer was a Biologist at the University of Blah-de-blah,
- and he had one of our computers that controlled gas mixtures that Mabel (the
- monkey) breathed. Now, Mabel was not your ordinary monkey. The University
- had spent years teaching Mabel to swim, and they were studying the effects
- that different gas mixtures had on her physiology. It turns out that the
- repair folks had just gotten a new Calibrated Power Supply (used to
- calibrate analog equipment), and at their first opportunity decided to
- calibrate the D/A converters in that computer. This changed some of the gas
- mixtures and poor Mabel was asphyxiated. Well, Bud then called the branch
- manager for the repair folks:
-
- Manager: Hello
- B: This is Bud, I heard you did a PM at the University of
- Blah-de-blah.
- M: Yes, we really performed a complete PM. What can I do
- for you?
- B: Can you swim?
-
- The moral is, of course, that you should always mount a scratch monkey.
-
- ~~~~~~~~~~~~~~~~~~~~~~
-
- There are several morals here related to risks in use of computers.
- Examples include, "If it ain't broken, don't fix it." However, the
- cautious philosophical approach implied by "always mount a scratch
- monkey" says a lot that we should keep in mind.
-
- Art Evans
- Tartan Labs
-
- TV Typewriters: A Tale Of Hackish Ingenuity
- ===========================================
-
- Here is a true story about a glass tty. One day an MIT hacker was in
- a motorcycle accident and broke his leg. He had to stay in the
- hospital quite a while, and got restless because he couldn't HACK (use
- the computer). Two of his friends therefore took a display terminal
- and a telephone connection for it to the hospital, so that he could
- use the computer by telephone from his hospital bed.
-
- Now this happened some years before the spread of home computers, and
- computer terminals were not a familiar sight to the average person.
- When the two friends got to the hospital, a guard stopped them and
- asked what they were carrying. They explained that they wanted to
- take a computer terminal to their friend who was a patient.
-
- The guard got out his list of things that patients were permitted to
- have in their rooms: TV, radio, electric razor, typewriter, tape
- player... no computer terminals. Computer terminals weren't on the
- list, so they couldn't take it in. Rules are rules.
-
- Fair enough, said the two friends, and they left again. They were
- frustrated, of course, because they knew that the terminal was as
- harmless as a TV or anything else on the list... which gave them an
- idea.
-
- The next day they returned, and the same thing happened: a guard
- stopped them and asked what they were carrying. They said, "This is
- a TV typewriter!" The guard was skeptical, so they plugged it in and
- demonstrated it. "See? You just type on the keyboard and what you
- type shows up on the TV screen." Now the guard didn't stop to think
- about how utterly useless a typewriter would be that didn't produce
- any paper copies of what you typed; but this was clearly a TV
- typewriter, no doubt about it. So he checked his list: "A TV is all
- right, a typewriter is all right... okay, take it on in!"
-
- Two Stories About `Magic' (by Guy Steele)
- =========================================
-
- When Barbara Steele was in her fifth month of pregnancy, her doctor
- sent her to a specialist to have a sonogram made to determine whether
- there were twins. She dragged her husband Guy along to the
- appointment. It was quite fascinating; as the doctor moved an
- instrument along the skin, a small TV screen showed cross-sectional
- pictures of the abdomen.
-
- Now Barbara and I had both studied computer science at MIT, and we
- both saw that some complex computerized image-processing was involved.
- Out of curiosity, we asked the doctor how it was done, hoping to learn
- some details about the mathematics involved. The doctor, not knowing
- our educational background, simply said, "The probe sends out sound
- waves, which bounce off the internal organs. A microphone picks up
- the echoes, like radar, and send the signals to a computer---and the
- computer makes a picture." Thanks a lot! Now a hacker would have
- said, "... and the computer *magically* makes a picture",
- implicitly acknowledging that he has glossed over an extremely
- complicated process.
-
- Some years ago I was snooping around in the cabinets that housed the
- MIT AI Lab's PDP-10, and noticed a little switch glued to the frame of
- one cabinet. It was obviously a homebrew job, added by one of the
- lab's hardware hackers (no one know who).
-
- You don't touch an unknown switch on a computer without knowing what
- it does, because you might crash the computer. The switch was labeled
- in a most unhelpful way. It had two positions, and scrawled in pencil
- on the metal switch body were the words `magic' and `more magic'.
- The switch was in the `more magic' position.
-
- I called another hacker over to look at it. He had never seen the
- switch before either. Closer examination revealed that the switch
- only had one wire running to it! The other end of the wire did
- disappear into the maze of wires inside the computer, but it's a basic
- fact of electricity that a switch can't do anything unless there are
- two wires connected to it. This switch had a wire connected on one
- side and no wire on its other side.
-
- It was clear that this switch was someone's idea of a silly joke.
- Convinced by our reasoning that the switch was inoperative, we flipped
- it. The computer instantly crashed.
-
- Imagine our utter astonishment. We wrote it off as coincidence, but
- nevertheless restored the switch to the `more magic' position before
- reviving the computer.
-
- A year later, I told this story to yet another hacker, David Moon as I
- recall. He clearly doubted my sanity, or suspected me of a
- supernatural belief in the power of this switch, or perhaps thought I
- was fooling him with a bogus saga. To prove it to him, I showed him
- the very switch, still glued to the cabinet frame with only one wire
- connected to it, still in the `more magic' position. We scrutinized
- the switch and its lone connection, and found that the other end of
- the wire, though connected to the computer wiring, was connected to a
- ground pin. That clearly made the switch doubly useless: not only was
- it electrically nonoperative, but it was connected to a place that
- couldn't affect anything anyway. So we flipped the switch.
-
- The computer promptly crashed.
-
- This time we ran for Richard Greenblatt, a long-time MIT hacker, who
- was close at hand. He had never noticed the switch before, either.
- He inspected it, concluded it was useless, got some diagonal cutters
- and diked it out. We then revived the computer and it ran fine ever
- since.
-
- We still don't know how the switch crashed the machine. There is a
- theory that some circuit near the ground pin was marginal, and
- flipping the switch changed the electrical capacitance enough to upset
- the circuit as millionth-of-a-second pulses went through it. But
- we'll never know for sure; all we can really say is that the switch
- was <magic>.
-
- I still have that switch in my basement. Maybe I'm silly, but I
- usually keep it set on `more magic.'
-
- A Selection of AI Koans
- =======================
-
- These are perhaps the funniest examples of a genre of jokes told at
- the MIT AI lab about various noted computer scientists and hackers.
- The original koans were composed by Danny Hillis.
-
- * * *
-
- A novice was trying to fix a broken Lisp machine by turning the power
- off and on.
-
- Knight, seeing what the student was doing spoke sternly: "You can not
- fix a machine by just power-cycling it with no understanding of what
- is going wrong."
-
- Knight turned the machine off and on.
-
- The machine worked.
-
- [Ed note: This is much funnier if you know that Tom Knight was one of the
- Lisp machine's principal designers]
-
- * * *
-
- One day a student came to Moon and said, "I understand how to
- make a better garbage collector. We must keep a reference count
- of the pointers to each cons."
-
- Moon patiently told the student the following story:
-
- "One day a student came to Moon and said, `I understand how
- to make a better garbage collector...
-
- [Ed. note: The point here is technical. Pure reference-count garbage
- collectors have problems with `pathological' structures that point
- to themselves.]
-
- * * *
-
- In the days when Sussman was a novice Minsky once came to him as
- he sat hacking at the PDP-6.
-
- "What are you doing?", asked Minsky.
-
- "I am training a randomly wired neural net to play Tic-Tac-Toe",
- Sussman replied.
-
- "Why is the net wired randomly?", asked Minsky.
-
- "I do not want it to have any preconceptions of how to play",
- Sussman said.
-
- Minsky then shut his eyes.
-
- "Why do you close your eyes?", Sussman asked his teacher.
-
- "So that the room will be empty."
-
- At that moment, Sussman was enlightened.
-
- * * *
-
- A disciple of another sect once came to Drescher as he was
- eating his morning meal.
-
- "I would like to give you this personality test", said the
- outsider, "because I want you to be happy."
-
- Drescher took the paper that was offered him and put it
- into the toaster, saying:
-
- "I wish the toaster to be happy, too."
-
- OS and JEDGAR
- *************
-
- This story says a lot about the style of the ITS culture.
-
- On the ITS system there was a program that allowed you to see what is
- being printed on someone else's terminal. It worked by `spying' on
- the other guy's output, by examining the insides of the monitor
- system. The output spy program was called OS. Throughout the rest of
- the computer science (and also at IBM) OS means `operating system',
- but among old-time ITS hackers it almost always meant `output spy'.
-
- OS could work because ITS purposely had very little in the way of
- `protection' that prevented one user from interfering with another.
- Fair is fair, however. There was another program that would
- automatically notify you if anyone started to spy on your output. It
- worked in exactly the same way, by looking at the insides of the
- operating system to see if anyone else was looking at the insides that
- had to do with your output. This `counterspy' program was called
- JEDGAR (pronounced as two syllables: /jed'gr/), in honor of the former
- head of the FBI.
-
- But there's more. The rest of the story is that JEDGAR would ask the
- user for `license to kill'. If the user said yes, then JEDGAR would
- actually gun the job of the luser who was spying. However, people
- found this made life too violent, especially when tourists learned
- about it. One of the systems hackers solved the problem by replacing
- JEDGAR with another program that only pretended to do its job. It
- took a long time to do this, because every copy of JEDGAR had to be
- patched, and to this day no one knows how many people never figured
- out that JEDGAR had been defanged.
-
- The Story of Mel, a Real Programmer
- ***********************************
-
- This was posted to USENET by Ed Nather (utastro!nather), May 21, 1983.
-
- A recent article devoted to the *macho* side of programming
- made the bald and unvarnished statement:
-
- Real Programmers write in Fortran.
-
- Maybe they do now,
- in this decadent era of
- Lite beer, hand calculators and "user-friendly" software
- but back in the Good Old Days,
- when the term "software" sounded funny
- and Real Computers were made out of drums and vacuum tubes,
- Real Programmers wrote in machine code.
- Not Fortran. Not RATFOR. Not, even, assembly language.
- Machine Code.
- Raw, unadorned, inscrutable hexadecimal numbers.
- Directly.
-
- Lest a whole new generation of programmers
- grow up in ignorance of this glorious past,
- I feel duty-bound to describe,
- as best I can through the generation gap,
- how a Real Programmer wrote code.
- I'll call him Mel,
- because that was his name.
-
- I first met Mel when I went to work for Royal McBee Computer Corp.,
- a now-defunct subsidiary of the typewriter company.
- The firm manufactured the LGP-30,
- a small, cheap (by the standards of the day)
- drum-memory computer,
- and had just started to manufacture
- the RPC-4000, a much-improved,
- bigger, better, faster --- drum-memory computer.
- Cores cost too much,
- and weren't here to stay, anyway.
- (That's why you haven't heard of the company, or the computer.)
-
- I had been hired to write a Fortran compiler
- for this new marvel and Mel was my guide to its wonders.
- Mel didn't approve of compilers.
-
- "If a program can't rewrite its own code",
- he asked, "what good is it?"
-
- Mel had written,
- in hexadecimal,
- the most popular computer program the company owned.
- It ran on the LGP-30
- and played blackjack with potential customers
- at computer shows.
- Its effect was always dramatic.
- The LGP-30 booth was packed at every show,
- and the IBM salesmen stood around
- talking to each other.
- Whether or not this actually sold computers
- was a question we never discussed.
-
- Mel's job was to re-write
- the blackjack program for the RPC-4000.
- (Port? What does that mean?)
- The new computer had a one-plus-one
- addressing scheme,
- in which each machine instruction,
- in addition to the operation code
- and the address of the needed operand,
- had a second address that indicated where, on the revolving drum,
- the next instruction was located.
- In modern parlance,
- every single instruction was followed by a GO TO!
- Put *that* in Pascal's pipe and smoke it.
-
- Mel loved the RPC-4000
- because he could optimize his code:
- that is, locate instructions on the drum
- so that just as one finished its job,
- the next would be just arriving at the "read head"
- and available for immediate execution.
- There was a program to do that job,
- an "optimizing assembler",
- but Mel refused to use it.
-
- "You never know where its going to put things",
- he explained, "so you'd have to use separate constants".
-
- It was a long time before I understood that remark.
- Since Mel knew the numerical value
- of every operation code,
- and assigned his own drum addresses,
- every instruction he wrote could also be considered
- a numerical constant.
- He could pick up an earlier "add" instruction, say,
- and multiply by it,
- if it had the right numeric value.
- His code was not easy for someone else to modify.
-
- I compared Mel's hand-optimized programs
- with the same code massaged by the optimizing assembler program,
- and Mel's always ran faster.
- That was because the "top-down" method of program design
- hadn't been invented yet,
- and Mel wouldn't have used it anyway.
- He wrote the innermost parts of his program loops first,
- so they would get first choice
- of the optimum address locations on the drum.
- The optimizing assembler wasn't smart enough to do it that way.
-
- Mel never wrote time-delay loops, either,
- even when the balky Flexowriter
- required a delay between output characters to work right.
- He just located instructions on the drum
- so each successive one was just *past* the read head
- when it was needed;
- the drum had to execute another complete revolution
- to find the next instruction.
- He coined an unforgettable term for this procedure.
- Although "optimum" is an absolute term,
- like "unique", it became common verbal practice
- to make it relative:
- "not quite optimum" or "less optimum"
- or "not very optimum".
- Mel called the maximum time-delay locations
- the "most pessimum".
-
- After he finished the blackjack program
- and got it to run,
- ("Even the initializer is optimized",
- he said proudly)
- he got a Change Request from the sales department.
- The program used an elegant (optimized)
- random number generator
- to shuffle the "cards" and deal from the "deck",
- and some of the salesmen felt it was too fair,
- since sometimes the customers lost.
- They wanted Mel to modify the program
- so, at the setting of a sense switch on the console,
- they could change the odds and let the customer win.
-
- Mel balked.
- He felt this was patently dishonest,
- which it was,
- and that it impinged on his personal integrity as a programmer,
- which it did,
- so he refused to do it.
- The Head Salesman talked to Mel,
- as did the Big Boss and, at the boss's urging,
- a few Fellow Programmers.
- Mel finally gave in and wrote the code,
- but he got the test backwards,
- and, when the sense switch was turned on,
- the program would cheat, winning every time.
- Mel was delighted with this,
- claiming his subconscious was uncontrollably ethical,
- and adamantly refused to fix it.
-
- After Mel had left the company for greener pa$ture$,
- the Big Boss asked me to look at the code
- and see if I could find the test and reverse it.
- Somewhat reluctantly, I agreed to look.
- Tracking Mel's code was a real adventure.
-
- I have often felt that programming is an art form,
- whose real value can only be appreciated
- by another versed in the same arcane art;
- there are lovely gems and brilliant coups
- hidden from human view and admiration, sometimes forever,
- by the very nature of the process.
- You can learn a lot about an individual
- just by reading through his code,
- even in hexadecimal.
- Mel was, I think, an unsung genius.
-
- Perhaps my greatest shock came
- when I found an innocent loop that had no test in it.
- No test. *None*.
- Common sense said it had to be a closed loop,
- where the program would circle, forever, endlessly.
- Program control passed right through it, however,
- and safely out the other side.
- It took me two weeks to figure it out.
-
- The RPC-4000 computer had a really modern facility
- called an index register.
- It allowed the programmer to write a program loop
- that used an indexed instruction inside;
- each time through,
- the number in the index register
- was added to the address of that instruction,
- so it would refer
- to the next datum in a series.
- He had only to increment the index register
- each time through.
- Mel never used it.
-
- Instead, he would pull the instruction into a machine register,
- add one to its address,
- and store it back.
- He would then execute the modified instruction
- right from the register.
- The loop was written so this additional execution time
- was taken into account ---
- just as this instruction finished,
- the next one was right under the drum's read head,
- ready to go.
- But the loop had no test in it.
-
- The vital clue came when I noticed
- the index register bit,
- the bit that lay between the address
- and the operation code in the instruction word,
- was turned on---
- yet Mel never used the index register,
- leaving it zero all the time.
- When the light went on it nearly blinded me.
-
- He had located the data he was working on
- near the top of memory ---
- the largest locations the instructions could address ---
- so, after the last datum was handled,
- incrementing the instruction address
- would make it overflow.
- The carry would add one to the
- operation code, changing it to the next one in the instruction set:
- a jump instruction.
- Sure enough, the next program instruction was
- in address location zero,
- and the program went happily on its way.
-
- I haven't kept in touch with Mel,
- so I don't know if he ever gave in to the flood of
- change that has washed over programming techniques
- since those long-gone days.
- I like to think he didn't.
- In any event,
- I was impressed enough that I quit looking for the
- offending test,
- telling the Big Boss I couldn't find it.
- He didn't seem surprised.
-
- When I left the company,
- the blackjack program would still cheat
- if you turned on the right sense switch,
- and I think that's how it should be.
- I didn't feel comfortable
- hacking up the code of a Real Programmer.
-
- This is one of hackerdom's great heroic epics, free verse or no. In a
- few spare images it captures more about the esthetics and psychology
- of hacking than every scholarly volume on the subject put together.
- For an opposing point of view, see the entry for <real programmer>.
-
- A Portrait of J. Random Hacker
- ******************************
-
- This profile reflects detailed comments on an earlier `trial balloon'
- version from about a hundred USENET respondents. Where comparatives
- are used, the implicit `other' is a randomly selected group from the
- non-hacker population of the same size as hackerdom.
-
-
- General appearance:
- ===================
-
- Intelligent. Scruffy. Intense. Abstracted. Interestingly for a
- sedentary profession, more hackers run to skinny than fat; both
- extremes are more common than elswhere. Tans are rare.
-
-
- Dress:
- ======
-
- Casual, vaguely post-hippy; T-shirts, jeans, running shoes,
- Birkenstocks (or bare feet). Long hair, beards and moustaches are
- common. High incidence of tie-dye and intellectual or humorous
- `slogan' T-shirts (only rarely computer related, that's too obvious).
-
- A substantial minority runs to `outdoorsy' clothing --- hiking boots
- ("in case a mountain should suddenly spring up in the machine room",
- as one famous parody put it), khakis, lumberjack or chamois shirts and
- the like.
-
- Very few actually fit the National-Lampoon-Nerd stereotype, though it
- lingers on at MIT and may have been more common before 1975. These
- days, backpacks are more common than briefcases, and the hacker `look'
- is more whole-earth than whole-polyester.
-
- Hackers dress for comfort, function, and minimal maintenance hassles
- rather than for appearance (some, unfortunately, take this to extremes
- and neglect personal hygiene). They have a very low tolerance of
- suits or other `business' attire, in fact it is not uncommon for
- hackers to quit a job rather than conform to dress codes.
-
- Female hackers never wear visible makeup and many use none at all.
-
-
- Reading habits:
- ===============
-
- Omnivorous, but usually includes lots of science and science fiction.
- The typical hacker household might subscribe to `Analog',
- `Scientific American', `Co-Evolution Quarterly' and
- `Smithsonian'. Hackers often have a reading range that astonishes
- `liberal arts' people but tend not to talk about it as much. Many
- hackers spend as much of their spare time reading as the average
- American burns up watching TV, and often keep shelves and shelves of
- well-thumbed books in their homes.
-
-
- Other interests:
- ================
-
- Some hobbies are widely shared and recognized as going with the
- culture. Science fiction. Music (see the MUSIC entry). Medievalism.
- Chess, go, wargames and intellectual games of all kinds. Role-playing
- games such as Dungeons and Dragons used to be extremely popular among
- hackers but have lost a bit of their former luster as they moved into
- the mainstream and became heavily commercialized. Logic puzzles. Ham
- radio. Other interests that seem to correlate less strongly but
- positively with hackerdom include: linguistics and theater teching.
-
-
- Physical Activity and Sports:
- =============================
-
- Many (perhaps even most) hackers don't do sports at all and are
- determinedly anti-physical.
-
- Among those that do, they are almost always self-competitive ones
- involving concentration, stamina and micromotor skills; martial arts,
- bicycling, kite-flying, hiking, rock-climbing, sailing, caving,
- juggling.
-
- Hackers avoid most team sports like the plague (volleyball is a
- notable and unexplained exception).
-
-
- Education:
- ==========
-
- Nearly all hackers past their teens are either college-degreed or
- self-educated to an equivalent level. The self-taught hacker is often
- considered (at least by other hackers) to be better-motivated and more
- respected than his B.Sc. counterpart. Academic areas from which
- people often gravitate into hackerdom include (besides the obvious
- computer science and electrical engineering) physics, mathematics,
- linguistics, and philosophy.
-
-
- Things hackers detest and avoid:
- ================================
-
- IBM mainframes. Smurfs and other forms of offensive cuteness.
- Bureaucracies. Stupid people. Easy listening music. Television
- (except for cartoons, movies, the old `Star Trek' and the new
- `Simpsons'). Business suits. Dishonesty. Incompetence. Boredom.
- BASIC. Character-based menu interfaces.
-
-
- Food:
- =====
-
- Ethnic. Spicy. Oriental, esp. Chinese and most especially Szechuan,
- Hunan and Mandarin (hackers consider Cantonese vaguely declasse).
- Thai food has experienced flurries of popularity. Where available
- high-quality Jewish delicatessen food is much esteemed. A visible
- minority of Midwestern and Southwestern hackers prefers Mexican.
-
- For those all-night hacks, pizza and microwaved burritos are big.
- Interestingly, though the mainstream culture has tended to think of
- hackers as incorrigible junk-food junkies, many have at least mildly
- health-foodist attitudes and are fairly discriminating about what they
- eat. This may be generational; anecdotal evidence suggests that the
- stereotype was more on the mark ten years ago.
-
-
- Politics:
- =========
-
- Vaguely left of center, except for the strong libertarian contingent
- which rejects conventional left-right politics entirely. The only
- safe generalization is that almost all hackers are anti-authoritarian,
- thus both conventional conservatism and `hard' leftism are rare.
- Hackers are far more likely than most non-hackers to either a) be
- aggressively apolitical, or b) entertain peculiar or idiosyncratic
- political ideas and actually try to live by them day-to-day.
-
-
- Gender & Ethnicity:
- ===================
-
- Hackerdom is still predominantly male. However, the percentage of
- women is clearly higher than the low-single-digit range typical for
- technical professions.
-
- Hackerdom is predominantly Caucasian with a strong minority of Jews
- (east coast) and Asians (west coast). The Jewish contingent has
- exerted a particularly pervasive cultural influence (see Food, and
- note that several common slang terms are obviously mutated Yiddish).
-
- Hackers as a group are about as color-blind as anyone could ask for,
- and ethnic prejudice of any kind tends to be met with extreme
- hostility; the ethnic distribution of hackers is understood by them to
- be a function of who tends to seek and get higher education.
-
- It has been speculated that hackish gender- and color-blindness is
- partly a positive effect of ASCII-only network channels.
-
-
- Religion:
- =========
-
- Agnostic. Atheist. Non-observant Jewish. Neo-pagan. Very commonly
- three or more of these are combined in the same person. Conventional
- faith-holding Christianity is rare though not unknown (at least on the
- east coast, more hackers wear yarmulkes than crucifixes).
-
- Even hackers who identify with a religious affiliation tend to be
- relaxed about it, hostile to organized religion in general and all
- forms of religious bigotry in particular. Many enjoy `parody'
- religions such as Discordianism and the Church of the SubGenius.
-
- Also, many hackers are influenced to varying degrees by Zen Buddhism
- or (less commonly) Taoism, and blend them easily with their `native'
- religions.
-
- There is a definite strain of mystical, almost Gnostic sensibility
- that shows up even among those hackers not actively involved with
- neo-paganism, Discordianism, or Zen. Hacker folklore that pays homage
- to `wizards' and speaks of incantations and demons has too much
- psychological truthfulness about it to be entirely a joke.
-
-
- Ceremonial chemicals:
- =====================
-
- Most hackers don't smoke tobacco and use alcohol in moderation if at
- all (though there is a visible contingent of exotic-beer fanciers).
- Limited use of `soft' drugs (esp. psychedelics such as marijuana, LSD,
- psilocybin etc) used to be relatively common and is still regarded
- with more tolerance than in the mainstream culture. Use of `downers'
- and opiates, on the other hand, appears to be particularly rare;
- hackers seem in general to dislike drugs that `dumb them down'. On
- the other hand, many hackers regularly wire up on caffeine and sugar
- for all-night hacking runs.
-
-
- Communication style:
- ====================
-
- See the dictionary notes on `Hacker speech style'. Though hackers
- often have poor person-to-person communication skills, they are as a
- rule extremely sensitive to nuances of language and very precise in
- their use of it. They are often better at written communication than
- spoken.
-
-
- Geographical Distribution:
- ==========================
-
- In the U.S., hackerdom revolves on a Bay Area/Boston axis; about half
- of the hard core seems to live within a hundred miles of Cambridge or
- Berkeley. Hackers tend to cluster around large cities, especially
- `university towns' such as the Raleigh/Durham area in North Carolina
- or Princeton, New Jersey (this may simply reflect the fact that many
- are students or ex-students living near their alma maters).
-
-
- Sexual habits:
- ==============
-
- Hackerdom tolerates a much wider range of sexual and lifestyle
- variation than the mainstream culture. It includes a relatively large
- gay contingent. Hackers are more likely to live in polygynous or
- polyandrous relationships, practice open marriage, or live in communes
- or group houses. In this as in some other respects (see DGeneral
- Appearance) hackerdom semi-consciously maintains `counterculture'
- values.
-
-
- Personality Characteristics:
- ============================
-
- The most obvious common `personality' characteristics of hackers are
- high intelligence, consuming curiosity, and facility with intellectual
- abstractions. Also, most hackers are `neophiles', stimulated by and
- appreciative of novelty (especially intellectual novelty). Most are
- also relatively individualistic and anti-conformist.
-
- Contrary to stereotype, hackers are *not* usually intellectually
- narrow; they tend to be interested in any subject that can provide
- mental stimulation, and can often discourse knowledgeably and even
- interestingly on any number of obscure subjects --- assuming you can
- get them to talk at all as opposed to, say, going back to hacking.
-
- Hackers are `control freaks' in a way that has nothing to do with the
- usual coercive or authoritarian connotations of the term. In the same
- way that children delight in making model trains go forward and back
- by moving a switch, hackers love making complicated things like
- computers do nifty stuff for them. But it has to be *their*
- nifty stuff; they don't like tedium or nondeterminism. Accordingly
- they tend to be careful and orderly in their intellectual lives and
- chaotic elsewhere. Their code will be beautiful, even if their desks
- are buried in three feet of crap.
-
- Hackers are generally only very weakly motivated by conventional
- rewards such as social approval or money. They tend to be attracted
- by challenges and excited by interesting toys, and to judge the
- interest of work or other activities in terms of the challenges
- offered and the toys they get to play with.
-
- In terms of Myers-Briggs and equivalent psychometric systems,
- hackerdom appears to concentrate the relatively rare INTJ and INTP
- types; that is, introverted, intuitive and thinker types (as opposed
- to the extroverted-sensate personalities that predominate in the
- mainstream culture). ENT[JP] types are also concentrated among
- hackers but are in a minority.
-
-
- Weaknesses of the hacker personality:
- =====================================
-
- Relatively little ability to identify emotionally with other people.
- This may be because hackers generally aren't much like `other people'.
- Unsurprisingly, there is also a tendency to self-absorption,
- intellectual arrogance, and impatience with people and tasks perceived
- to be wasting one's time. As a result, many hackers have difficulty
- maintaining stable relationships.
-
- As cynical as hackers sometimes wax about the amount of idiocy in the
- world, they tend at bottom to assume that everyone is as rational,
- `cool', and imaginative as they consider themselves. This bias often
- contributes to weakness in communication skills. Hackers tend to be
- especially poor at confrontations and negotiation.
-
- Hackers are often monumentally disorganized and sloppy about dealing
- with the physical world. Bills don't get paid on time, clutter piles
- up to incredible heights in homes and offices, and minor maintenance
- tasks get deferred indefinitely.
-
- The sort of person who uses phrases like `incompletely socialized'
- usually thinks hackers are. Hackers regard such people with contempt
- when they notice them at all.
-
-
- Miscellaneous:
- ==============
-
- Hackers are more likely to keep cats than dogs. Many drive incredibly
- decrepit heaps and forget to wash them; richer ones drive spiffy
- Porsches and RX-7s and then forget to wash them.
-
- Bibliography
- ************
-
- Here are some other books you can read to help you understand the
- hacker mindset.
-
- Godel, Escher, Bach: An Eternal Golden Braid
- Hofstadter, Douglas
- Basic Books, New York 1979
- ISBN 0-394-74502-7
-
- This book reads like an intellectual Grand Tour of hacker
- preoccupations. Music, mathematical logic, programming, speculations
- on the nature of intelligence, biology, and Zen are woven into a
- brilliant tapestry themed on the concept of encoded self-reference.
- The perfect left-brain companion to `Illuminatus'.
-
- Illuminatus (three vols)
- 1. The Golden Apple
- 2. The Eye in the Pyramid
- 3. Leviathan
- Shea, Robert & Wilson, Robert Anton
- Dell Books, New York 1975
- ISBN 0-440-{14688-7,34691-6,14742-5}
-
- This work of alleged fiction is an incredible berserko-surrealist
- rollercoaster of world-girdling conspiracies, intelligent dolphins,
- the fall of Atlantis, who really killed JFK, sex, drugs, rock and roll
- and the Cosmic Giggle Factor. First published in 3 volumes, but
- there's now a one-volume trade paperback carried by most chain
- bookstores under SF. The perfect right-brain companion to Hofstadter's
- `Godel, Escher, Bach: An Eternal Golden Braid'. See <Eris>,
- <Discordianism>, <random numbers>, <Church Of The Sub-Genius>.
-
- The Hitchhiker's Guide to the Galaxy
- Douglas Adams
- Pocket Books 1981, New York
- ISBN 0-671-46149-4
-
- This Monty-Python-in-Space spoof of SF genre traditions has been
- popular among hackers ever since the original British radio show.
- Read it if only to learn about Vogons (see <bogons>) and the
- significance of the number 42 (see <random numbers>) --- also why the
- winningest chess program of 1990 was called `Deep Thought'.
-
- The Tao of Programming
- James Geoffrey
- Infobooks 1987, Santa Monica,
- ISBN 0-931137-07-1
-
- This gentle, funny spoof of the `Tao Te Ching' contains much that is
- illuminating about the hacker way of thought. "When you have learned
- to snatch the error code from the trap frame, it will be time for you
- to leave."
-
- Hackers
- Steven Levy
- Anchor/Doubleday 1984, New York
- ISBN 0-385-19195-2
-
- Levy's book is at its best in describing the early MIT hackers at the
- Model Railroad Club and the early days of the microcomputer
- revolution. He never understood UNIX or the networks, though, and his
- enshrinement of Richard Stallman as "the last true hacker" turns out
- (thankfully) to have been quite misleading. Numerous minor factual
- errors also mar the text; for example, Levy's claim that the original
- jargon file derived from a 1959 dictionary of Model Railroad Club
- slang is incorrect (the File originated at Stanford and was brought to
- MIT in 1976; the First Edition coathors had never seen the dictionary
- in question). Nevertheless this remains a useful and stimulating book
- that captures the feel of several important hackish subcultures.
-
- The Cuckoo's Egg
- Clifford Stoll
- Doubleday 1989, New York
- ISBN 0-385-24946-2
-
- Clifford Stoll's absorbing tale of how he tracked Markus Hess and the
- Chaos Club cracking-ring nicely illustrates the difference between
- `hacker' and `cracker'. And Stoll's portrait of himself and his lady
- Martha and his friends at Berkeley and on the Internet paints a
- marvelously vivid picture of how hackers and the people around them
- like to live and what they think.
-
- The Devil's DP Dictionary
- by Stan Kelly-Bootle
- McGraw-Hill Inc, 1981
- ISBN 0-07-034022-6
-
- This pastiche of Ambrose Bierce's famous work is similar in format to
- the Jargon File (and quotes several entries from jargon-1) but
- somewhat different in tone and intent. It is more satirical and less
- anthropological, and largely a product of the author's literate and
- quirky imagination. For example, it defines `computer science' as
- "A study akin to numerology and astrology, but lacking the precision
- of the former and the success of the latter"; also as "The boring
- art of coping with a large number of trivialities."
-
- The Devouring Fungus: Tales from the Computer Age
- by Karla Jennings
- W. W. Norton 1990, New York
- ISBN 0-393-30732-8
-
- The author of this pioneering compendium knits together a great deal
- of computer and hacker-related folklore with good writing and a few
- well-chosen cartoons. She has a keen eye for the human aspects of the
- lore and is very good at illuminating the psychology and evolution of
- hackerdom. Unfortunately, a number of small errors and awkwardnesses
- suggest that she didn't have the final manuscript vetted by a hackish
- insider; the glossary in the back is particularly embarrassing, and at
- least one classic tale (the Magic Switch story in this file's Appendix
- A) is given in incomplete and badly mangled form. Nevertheless, this
- book is a win overall and can be enjoyed by hacker and non-hacker
- alike.
-
- True Names...and Other Dangers
- by Vernor Vinge
- Baen Books 1987, New York
- ISBN 0-671-65363
-
- Hacker demigod Richard Stallman believes the title story of this book
- "expresses the spirit of hacking best". This may well be true; it's
- certainly difficult to recall anyone doing a better job. The other
- stories in this collection are also fine work by an author who is
- perhaps one of today's very best practitioners of the hard-SF genre.
-
-